Länge prüfen & mehr (Excel)

freekazoid

Erfahrenes Mitglied
Hallo zusammen!

Ich hab mich grad hingesetzt und ein kleines VB-Script geschrieben, welches mir automatisch Zellen mit bestimmten Daten auffüllt, wenn in der nächsten Zeile nix folgt.
Hat zwar ein wenig gedauert, aber ich bin ja lernfähig. ;)

Nun, jetzt muss ich noch folgendes machen, und da steck ich fest:
Das Script soll checken, ob die abhängige Zelle länger als 11 Zeichen ist. Wenn dies der Fall wäre, sollen diese 11 Zeichen zuerst gelöscht und dann normal mit dem Auffüllen weitergefahren werden.

Zur Info hier das bis jetzt getippte Script:
Code:
' Daten verteilen in gesamte Spalten
    For n = 2 To Cells(65536, 3).End(xlUp).Row
    If Cells(n, 1) = "" Then Cells(n, 1) = Cells(n - 1, 1)
    If Cells(n, 2) = "" Then Cells(n, 2) = Cells(n - 1, 2)
    Next n
Wie man vielleicht sieht sind es 2 Spalten, welche ich hier auffüllen möchte, jedoch für meine Aufgabe ist nur die erste (sprich Spalte A) nötig.

Freu mich natürlich über jegliche Hilfe :)

Grüsse
 
Jo danke!

Das hab ich damit gemacht. Sollte ja eigentlich meines Erachtens funktionieren?
Code:
    For n = 2 To Cells(65536, 3).End(xlUp).Row
    If Cells(n, 1) < 10 Then Cells(n, 1) = Cells(25, 7)
    ElseIf Cells(n, 1) = "" Then Cells(n, 1) = Cells(n - 1, 1)
    Next n
Jedoch wenn ich das versuch zu kombinieren schreit VB "Fehler beim Kompilieren: Else Ohne If" ... Bitte was?
 
end if

da fehlt auf jeden Fall noch ein "end if".

Code:
For n = 2 To Cells(65536, 3).End(xlUp).Row
If Cells(n, 1) < 10 Then
  Cells(n, 1) = Cells(25, 7)
ElseIf Cells(n, 1) = "" Then
  Cells(n, 1) = Cells(n - 1, 1)
end if
Next n

gruß
thekorn
 
Du brauchst noch ein "End If". Wenn du Zellen mutieren willst, resp. selektieren musst du nach das Sheet angeben.
Bsp. activesheet.cells..... oder sheets(<sheetname oder index).cells.....
 

Neue Beiträge

Zurück