• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Automatisch opvullen van lege cellen

Status
Niet open voor verdere reacties.

stefano

Gebruiker
Lid geworden
22 mei 2004
Berichten
865
Beste,

Ik wil in een kolom de lege ruimte tussen 1,2,3 of meerdere cellen opvullen met de bovenstaande waarde. Hoe kan ik dit uitvoeren met vba ?

dank bij voorbaat,

stefano
 

Bijlagen

zo:

Code:
Sub opvullen()
For Each cl In Range("a2:a34")
If cl.Value = "" Then cl.FillDown
Next
End Sub

Niels
 
Ik krijg een foutmelding

Compileerfout: een variabele is niet gedefinieerd.
 
Vreemd, ik heb hem in een module geplaatst en het werkt schitterend.
 
Nu werkt die ook bij mij, maar elke module start bij mij met 'option explicit'. Wanneer ik deze weg doe, dan werkt alles . Maar waarom moest die er dan staan ?
 
'option explicit'

Deze kun je uitzetten in vba bij extra => opties
"variabelen declareren vereist" uitvinken.

Als je variabelen declareert loopt de code sneller.
als je ze niet declareert wordt deze als een variant gezien en die kosten het meeste geheugen.

De verschillende gegevenstypes
Gegevenstype Geheugen Bereik
Byte 1 byte 0 tot 255
Boolean 2 bytes Waar of Onwaar
Integer 2 bytes -32.768 tot 32.768
Long (Long integer) 4 bytes -2.147.483.648 tot 2.147.483.647
Single 4 bytes -3,402823E38 tot -1,401298E-45 voor negatieve waarden; 1,401298E-45 tot 3,402823E38 voor positieve waarden.
Double 8 bytes -1,79769313486232E308 tot -4,94065645841247E-324 voor negatieve waarden; 4,94065645841247E-324 tot 1,79769313486232E308 voor positieve waarden.
Currency 8 bytes -922.337.203.685.477,5808 tot 922.337.203.685.477,5807
Decimal 14 bytes +/-79.228.162.514.264.337.539.543.950.335 zonder decimale komma; +/- 7,9228162514264337539543950335 met 28 decimalen.
Date 8 bytes 1 januari 100 tot 31 december 9999
Object 4 bytes Elke objectverwijzing
String 10 bytes + 1 byte per teken 0 tot ongeveer 2 miljard
String (vaste lengte) Lengte van de tekenreeks 1 tot ongeveer 65.400
Variant (getal) 16 bytes Elke numerieke waarde tot het bereik van een Double
Variant (tekst) 22 bytes + 1 byte per teken Zelfde bereik als bij een string met variabele lengte




Niels
 
Laatst bewerkt:
Het is een goede gewoonte om te declareren.
Je zou cl kunnen declareren als Range en Option Explicit niet verwijderen.

Code:
Dim cl as Range

Het is handig om in de naamgeving rekening te houden met het soort variabele, omdat je zo verder in de code weet met wat voor soort variabele te maken hebt.
Dus ipv:
Code:
Dim Naam as String
... gebruik je het feit dat het een String betreft in de naam, dus...
Code:
Dim strNaam as String
Dim sNaam as String
Dim str_Naam as String
enz.

Bij naam is het overigens wel nogal logisch dat het om een String gaat.

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan