Aanpassing bestaande VBA script

Status
Niet open voor verdere reacties.

jan excel

Gebruiker
Lid geworden
4 mrt 2007
Berichten
437
Hoi Experts,

Met onderstaande script worden gegevens in kolom D gezet onder de laatste ingevulde cel in kolom d
Echter nu wil ik dat alleen in de Range D5 tot D20 deze gegevens gezet gaan worden ipv de hele kolom.
Wie kan mij de huidige VBA code aanpassen om dit te realiseren.

Na regel 20 worden ook weer gegevens in gevuld maar dan met een andere menu met checkboxen.
Dit was voorheen niet daarom voldeed destijds deze script.


Code:
Private Sub CommandButton1_Click()
Dim Item As String, ccont As Control

For Each ccont In Me.Controls
    If TypeName(ccont) = "CheckBox" Then
        If ccont = True Then Item = Item & ccont.Caption & ","
    End If
Next ccont

If Len(Item) > 0 Then Sheets("data").Range("D" & Rows.Count).End(xlUp).Offset(1) = Left(Item, Len(Item) - 1)
For Each ccont In Me.Controls
    If TypeName(ccont) = "CheckBox" Then ccont = False
    
    
Next ccont

End Sub


Bij voorbaat dank.
Jan E
 
Laatst bewerkt door een moderator:
maak van

Code:
Sheets("data").Range([COLOR="#FF0000"]"D" & Rows.Count[/COLOR]).End(xlUp).Offset(1) = Left(Item, Len(Item) - 1)

gewoon

Code:
Sheets("data").Range([COLOR="#FF0000"]"D20[/COLOR]").End(xlUp).Offset(1) = Left(Item, Len(Item) - 1)
 
Laatst bewerkt:
Hoi Emields,
,
Bedankt voor je reactie.
Deze script werkt zoals gevraagd voor de cellen t/m regel 20, bedankt hiervoor.
Echter nu dien ik nog een code te hebben die begint bij cel 21 met gegevens invullen, deze code komt wordt dan in een andere commandobutton gezet. Weet je hier ook een code voor.

zelf had ik onderstaand geprobeerd echter dat werkt niet.

Code:
If Len(Item) > 0 Then Sheets("data").Range("D21:D30").End(xlUp).Offset(1) = Left(Item, Len(Item) - 1)



voorbaat dank.
Jan
 
Laatst bewerkt:
Ik heb de code in de eerste post ook maar even in codetags gezet, dat leest toch echt een stuk makkelijker :)

In het vervolg graag direct codetags gebruiken.

M.v.g
Rick van Lieshout
 
mastermindzh,

Komt goed, zal in het vervolg hiermee rekening houden.

groet,
Jan
 
misschien zo


Code:
If Sheets("data").Range("D21") = "" Then
If Len(Item) <> 0 Then Sheets("data").Range("D21") = Left(Item, Len(Item) - 1)
Else
Sheets("data").Range("D30").End(xlUp).Offset(1) = Left(Item, Len(Item) - 1)
End If

maar zonder voorbeeldbestand is het altijd moeilijk werken
 
Als er aan uw vraag voldaan is gelieve ze dan als opgelost aan te duiden in uw eerste post.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan