den untenstehenden Code hat mir Micha überlassen (leider finde ich den Beitrag nicht mehr wieder). Er soll bewirken, dass ab einer markierten Zelle in Spalte A die vorgegebene Anzahl von Zellen (von Spalte B bis T) rechts neben der markierten Zelle automatisch gefüllt werden. Grundsätzlich funktioniert das auch. Ich hätte aber noch gerne Änderungen vorgenommen:
-wie muß der Code umgestellt werden, damit nur sichtbare Zellen/Zeilen bedient werden (ich habe etliche Zellen ausgeblendet, die momentan auch mit dem X ausgefüllt werden) ?
-was muß weiterhin umgestellt werden, damit bereits gefüllte Zellen in dem Bereich übersprungen werden und die Anzahl der vorgegenen X dennoch weiterrechnet?
-ist es möglich, dass das Gleiche noch z.B. für 20 Zeilen weiter ebenfalls noch wieder erfolgt. Bsp.: der markierte Bereich ist A6, die X werden ab B6, bis die Anzahl erreicht ist, gesetzt (bereits belegte Zellen werden übersprungen);
Im Anschluß wäre es nun schön, wenn 20 Zeilen weiter, also in dem Beispiel dann ab A26 die gleiche Anzahl X wieder gesetzt werden könnten.
Ich weiß, dass ich bislang immer ein gute Hilfestellung aus diesem Forum erhalten habe und würde mich über weitere Hilfe erneut freuen.
Gruß - Wolfgang
Hier der Code von Micha:
Sub ausfuellen()
Dim reihe As Long, spalte As Long, wieviel As Long, weg As Long
reihe = Selection.Row 'beginnt in der markierten Spalte
wieviel = InputBox("Anzahl X")
weg = 0
Do While weg <= wieviel
For spalte = 2 To 20
If Cells(reihe, spalte) <> "" Then
Else
Cells(reihe, spalte) = "X"
'weg = weg + 1 'wenn nur gesetzte X zählen
End If
weg = weg + 1 'wenn jede Zelle zählt
If weg >= wieviel Then Exit For
Next
reihe = reihe + 1
Loop
End Sub