Zodat een test-vermenigvuldiging van een rij met een 0 erin effectief nul geeft.ZoekVervangProduct.ods.
In deze bijlage is er na “zoek en vervang” een verschil tussen PRODUCT(A1:A3) en A1xA2xA3.
Hoe "zoek en vervang" je lege cellen door een numerieke 0 op een laptop zonder numeriek toetsenbord.
Bij vraag gevoegd.
Voorlopig antwoord: zo te zien vervangt Calc een blanco cel door de tekst “0”, in het formulevak weergegeven als '0
. Daardoor telt die waarde niet als getal. Ik zie daar niet meteen een oplossing voor.
Ik weet niet wat het doel nu feitelijk is?
a) Het invoegen van het getal 0(Nul).
b) Het berekenen van de uitkomst.
Zoals floris v het al aangeeft dat is moeilijk tot niet mogelijk. Het berekenen van de uitkomst is eenvoudig.
Het doel: lege cellen vervangen door een numerieke 0. Waarom is het dan eenvoudig dat soms LEEG niet meegeteld wordt als 0 (bvb in PRODUCT(…)) en bij AxBxCx… niet? Eigenlijk is de werkwijze van PRODUCT heel logisch, het vermenigvuldigt alleen NUMERIEKE waarden. Dus blijft de vraag: hoe maak ik van een LEGE cel een numerieke 0 (of een numerieke 1,2…)?
Oplossing: selecteer nadat je de blanco cellen hebt vervangen door de tekst “0”, de foute cellen en kies dan Data
> Naar kolommen
. De nullen moeten dan echte getallen zijn geworden.
Hi Floris, je oplossing begint te werken. In mijn Nederlandse Calc 6.4.7.2 wordt dat: gegevens>tekst naar kolommen.
Nadeeltje: je moet het kolom per kolom doen (of werkt dit beter in v7 of v5?) . Voor een grote tabel zou het iets handiger zijn als het ook per bereik zou gaan, of met eerst alles omzetten naar tekst en dan naar getal of ???
Nog een kleine verrassing: bij kopiëren en plakken speciaal getal krijgen we de lege cellen terug!
Ik zoek nog wat verder met je aanzet.
Met 0’n en lege cellen hebben ze atijd al problemen gehad (pas in ??? is de 0 uitgevonden)! Soms is het welles, soms nietes, soms naargelang: Het getal 0 wordt in België beschouwd als zowel positief als negatief, in Nederland als niet positief en niet negatief. Ik wist niet dat ONZE verschillen zo fundamenteel waren, maar het speelt ons wel parten (ons niet zo, die 0’n wel). Maar alle gekheid op een stokje: hoe “zoek en vervang” je lege cellen in een bereik door numerieke 0’n, blijft als basisvraag.
=A4 * IF(B4 >=0 ;B4;0)*C4
Bovenstaande is de code voor elke drie cellen en kan naar beneden getrokken worden. De zelfde code kan ook min of min gebruikt worden voor een lange tabel maar nu moet steeds een geheel bereik geselecteerd worden.
=A2:A4 * IF(B2:B4>0;B2:B4;0) * C2:C4
Bovenstaande code is voor een langere tabel. Er moet drie keer een bereik geselecteerd worden. Het gemakkelijkst gaat dit in de functie assistent. Waar ik IF gebruik moet in de Nederlandse versie als gebruikt worden.
Eindelijk gevonden dank zij Floris’ aanzet, alhoewel wat vreemd.
-a) Gewoon zoek en vervang LEEG>0
-b) Het ganse bereik selecteren, bewerken>,kopiëren en “abracadabra” ter plaatse plakken speciaal>niet opgemaakte tekst plakken! De 0’n of ieder ander cijfer zijn nu getallen geworden.
MAAR: de formules in het bereik zijn nu door hun waarden vervangen (dat is ook zo bij tekst naar kolommen). Dit is dus het analoge van “plakken als waarden” uit excell.
Hoe klinkt dat in de engelse versie? En nog een andere manier na -a) van hierboven -b1) zoek en vervang 0 door 0. De cijfers 0 zijn nu getal 0 geworden. Ook nu worden formules vervangen door waarden maar alleen deze die 0 als resultaat gaven. Maar eigenlijk bieden al deze “omzeilingen” collateral damage. De enige juiste manier zou zijn dat een numerieke 0 een numerieke 0 blijft, en als je een tekst 0 wil dat je dan bvb '0 of "0 moet invoeren. In de ingebouwde help wordt de lege cel<>0 uitvoerig besproken, maar het geeft geen antwoord op dit probleem. Misschien verhult die te uitgebreide uitleg de eigenlijke oorzaak…
Ik heb het idee dat je door alle opmerkingen over de werking van Calc te veel op een dwaalspoor komt. Het is inderdaad zo dat het vermenigvuldigen van cellen anders werkt dan het product van de zelfde cellen. Dat wordt ook in de helpfile aangegeven.
Libreoffice heeft de eigenschap dat, voorzover ik het begrijp, dat het bij een gewone vermenigvuldiging van cellen geen of weinig verschil maakt tussen getallen en tekst wat getallen voor moet stellen. In dit geval kun je er ook gebruik van maken door het gehele blok op te maken als tekst en gewoon zoek en vervangen toe te passen. Het zou best kunnen dat dan alles mooi tekst blijft. Het is wel zo dat een lege string in dit geval altijd een Nul-waarde blijft houden en dat dat ook de uitkomst wordt.
Na mijn eerste bericht heb ik wel grepen dat een formule wat ingewikkelder wordt, dus het is belangrijk om een goede werkwijze te maken.
Beste RPG, HET doel is via zoek en vervang een lege cel te vervangen door een numerieke 0 (zodat je er nadien alle numerieke bewerkingen kunt mee doen). De vermenigvuldiging en/of product is niet HET doel maar werd alleen als test bedoeld. Alle goede bedoelingen ten spijt geeft nog geen enkel voorstel hierboven een zuivere oplossing. Ik probeer het eens via de engelstalige website. Toch dank aan iedereen die meezocht…
Dank zij de engelstalige website (zie How can one "search and replace" (in calc) an empty cell with the number 0?) …1) zoals voorheen zoek leeg
en vervang door 0
… Alle cellen en alleen deze die vervangen werden zijn nu nog geselecteerd en de dialoogbox staat nog open… 2) zoek 0
ipv leeg
en vervang door 0
(staat er nog van stap 1) met huidige selectie aangevinkt. Er bestaat ook een Add-on om dat te doen: CT2N - Convert Text To Number (and dates) » Extensions