Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1680to1684
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA - Löschen Spalteninhalt ab einer gew. Zeile

VBA - Löschen Spalteninhalt ab einer gew. Zeile
25.03.2019 10:08:55
Babs
Hallo,
ich habe einen VBA Code zusammengestellt bzw. gesucht (Kopie aus VBA Forum) der in mehreren Tabellen nach drücken eines Buttons den Inhalt von Spalte 2 und Spalte 3 löscht. Das Funktioniert auch sehr gut - leider löscht er die ganze Spalte ab Zeile 1 und ich würde gerne erst ab Zeile 3 Löschen - leider komm ich selber nicht drauf was ich in meinem derzeitigen Code ändern muss damit das auch richtig funktioniert.
Kann mir bitte jemand helfen?
u.a. der Code den ich verwende:
Private Sub CommandButton2_Click()
Dim nr, zz
For nr = 1 To 24
For zz = 3 To 1000
With Sheets("Tabelle" & Trim(Str(nr)))
.Columns(2).ClearContents
.Columns(3).ClearContents
End With
End Sub

Bin dankbar für jeden Tipp der mich näher zur Lösung bring :-)
Danke Babs

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Löschen Spalteninhalt ab einer gew. Zeile
25.03.2019 10:22:41
Matthias
Hallo
dann darfst Du nicht .Columns(2).ClearContents schreiben, sondern
Range("B3:B?").ClearContents
wobei hier das Fragezeichen für Deine letzte zu löschende Zeile steht.
Gruß Matthias
AW: VBA - Löschen Spalteninhalt ab einer gew. Zeile
25.03.2019 10:37:07
Werner
Hallo Babs,
bei dem Code wird die letzte belebte Zelle in Spalte B und C jeweils im Code ermittelt, ist also egal wieviele Daten dort vorhanden sind.
Private Sub CommandButton2_Click()
Dim nr As Long
For nr = 1 To 24
With Worksheets("Tabelle" & CStr(nr))
If .Cells(.Rows.Count, 2).End(xlUp).Row > 2 Then
.Range(.Cells(3, 2), .Cells(.Cells(.Rows.Count, 2) _
.End(xlUp).Row, 2)).ClearContents
End If
If .Cells(.Rows.Count, 3).End(xlUp).Row > 2 Then
.Range(.Cells(3, 3), .Cells(.Cells(.Rows.Count, 3) _
.End(xlUp).Row, 3)).ClearContents
End If
End With
Next nr
End Sub
Gruß Werner
Anzeige
AW:VBA-Löschen Spalteninhalt ab einer gew. Zeile
25.03.2019 10:48:26
Babs
Hallo Werner,
viele DANK! das funktioniert super und macht genau das was ich wollte!
Danke
Babs
Gerne u. Danke für die Rückmeldung. o.w.T.
25.03.2019 10:58:01
Werner
und natürlich mit dem Punkt vor Range !
25.03.2019 10:40:16
Matthias
Hallo
natürlich mit dem Punkt vor Range !
also so gemeint ...
nur als Bsp.
    With Sheets("Tabelle" & Trim(Str(nr)))
.Range("B3:B100").ClearContents
.Range("C3:C100").ClearContents
End With
Das Ende des Bereiches(hier mal Zeile 100) musst Du natürlich anpassen.
Außerdem ist Dein gezeigter Code nicht korrekt.
Du beginnst 2x mit For also brauchst Du auch 2x ein Next
Gruß Matthias
AW: und natürlich mit dem Punkt vor Range !
25.03.2019 10:53:45
Babs
Halo Matthias,
vielen Dank für deinen Hilfe hat auch funktioniert - jedoch weiß ich nicht genau wie lang die Liste immer wird....daher hab ich jetzt den Code von Werner genommen der Löscht egal in welcher Zeile geschrieben wird.
...und danke für die Info was bei meinem Code außer das er nicht gemacht hat was ich wolle, noch nicht ganz richtig war! Darum ist es denk ich auch immer gefühlte 10 min. gelaufen bevor er fertig war mit dem löschen...
DANKE DANKE für Deine bzw. Eure Hilfe!
lg
Babs
Anzeige
AW: VBA - Löschen Spalteninhalt ab einer gew. Zeile
25.03.2019 14:14:50
Daniel
Hi
sofern die Zeile 1 auf dem jeweiligen Blatt auch eine Zelle mit Wert enthält:
For nr = 1 to 24
Sheets("Tabelle" & nr).Usedrange.Columns(2).Resize(, 2).Offset(2, 0).ClearContents
Next
Gruß Daniel

20 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige