• 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.

VB code kolom

Status
Niet open voor verdere reacties.

nobody11

Gebruiker
Lid geworden
20 dec 2007
Berichten
552
hey iedereen,

Ik heb deze code momenteel:

sub test()
dim i as integer

for i = 1 to range("aantal")
range("C"&i).value = 5
next i
end sub


de range aantal is gedefinieerd in excel als naam.. meer uitleg is hier niet nodig he.. nu zou ik graag het volgende willen:

eenzelfde code, mar ipv telkens een rij op te schuiven,een kolom..

dus als ik in het naamvak "aantal" 10 ingeef, dan wil ik grag dat startende van kolom B1 tem K1 telkens "5" komt te staan..

hoe kan ik dit doen? ik vermoed dat het iets is met "offset", maar ik weet niet direct hoe eraan te beginnen....

merci!
 
Was dit de bedoeling?

Sub test()
Dim i As Integer
For i = 1 To Range("aantal")
Rows.Cells(1, i + 1).Value = 5
Next i
End Sub


Mvg

Piet
 
Ik begrijp niet helemaal je vraag, maar mogelijk zet het volgende je op weg.

Binnen VBA kan je een cel aanduiden via .range("C2") bijvoorbeeld om te verwijzen naar cel C2, maar dat kan ook via .cells(2,3). Waarbij je eerst de rij en dan de kolom invult. Deze notatie is makkelijker om een kolom met een variabele aan te duiden, immers volstaat een getal en geen tekst voor de kolomaanduiding. Door nu bv. de waarde van de kolom in een variabele te steken kan je die ook laten oplopen bv.

Code:
for i=2 to 10
 activesheet.cells(1,i)="test"
next i

Op die manier schrijf je in de kolommen 2 tot 10, op de eerste rij de waarde "test".

Ik hoop dat je er iets aan hebt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan