Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA letzte Spalte löschen mit Stopp

VBA letzte Spalte löschen mit Stopp
17.04.2020 14:50:13
Chris
Hallöchen,
bisher war ich nur stiller Mitleser und hab hier schon viel gelernt. Vielen Dank dafür erstmal. Ich habe begonnen mich an VBA ranzutasten und bin da noch im "Krabbelmodus".
Ich möchte ein Steuerelement belegen mit der Funktion in einem anderen Arbeitsblatt eine komplette Spalte zu löschen. Ich habe das auch schon hervorragend mit einem VBA umgesetzt. Nun ist allerdings das Problem, dass der Nutzer nun in der Lage ist alle Spalten, also auch bis dahin wo Formeln hinterlegt sind zu löschen und genau das möchte ich verhindern.
Das VBA soll also die letzte beschriebene Spalte löschen, aber bei Spalte C unbedingt aufhören und am besten noch eine MsgBox auswerfen.
Ich danke im Voraus für Antworten
Bisher sieht mein Code so aus:
Sub letzteSpaltelöschen()
Dim lngSpalte As Long
Dim wksZiel As Worksheet
Set wksZiel = ThisWorkbook.Worksheets("Statistik")
'letzte beschriebene Spalte im Arbeitsblatt Statistik feststellen
With wksZiel
lngSpalte = .Cells(1, Columns.Count).End(xlToLeft).Column
End With
'löschen
wksZiel.Cells(1, lngSpalte).Delete
End Sub

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA letzte Spalte löschen mit Stopp
17.04.2020 14:54:39
MRUTor
Hallo Chris,
so

Sub letzteSpaltelöschen()
Dim lngSpalte As Long
Dim wksZiel As Worksheet
Set wksZiel = ThisWorkbook.Worksheets("Sheet3")
'letzte beschriebene Spalte im Arbeitsblatt Statistik feststellen
With wksZiel
lngSpalte = .Cells(1, Columns.Count).End(xlToLeft).Column
End With
'löschen
If lngSpalte > 3 Then
wksZiel.Cells(1, lngSpalte).Delete
Else
MsgBox "Stopp"
End If
End Sub

Gruss Tor
Anzeige
AW: VBA letzte Spalte löschen mit Stopp
17.04.2020 14:55:50
Rudi
Hallo,
if lngSpalte &gt 3 then ...
Gruß
Rudi
AW: VBA letzte Spalte löschen mit Stopp
17.04.2020 16:55:31
Chris
Danke erstmal fürs helfen. Jetzt hab ich aber irgendwo einen Fehler drin. Es wird nur noch die letzte beschriebene Zelle gelöscht.
Der Fehler war aber schon in meinem Code, den ich hier als funktionierend präsentiert hab. Wahrscheinlich hab ich beim rumprobieren, den funktionierenden Code überschrieben. Ich hatte es schon geschafft, dass die ganze Spalte gelöscht wird.
Wo ist jetzt der Fehler ?
Anzeige
AW: VBA letzte Spalte löschen mit Stopp
17.04.2020 20:55:49
Rudi
Hallo,
entweder
wksZiel.Cells(1, lngSpalte).EntireColumn.Delete
oder
wksZiel.Columns(lngSpalte).Delete
Gruß
Rudi
AW: VBA letzte Spalte löschen mit Stopp
22.04.2020 18:29:28
Chris
Jetzt hab ich ganz vergessen mich hier zu bedanken.
Vielen Dank für euren Lösungsansatz. Ich hab es so hinbekommen.
Gibt es noch Tipps wie man sich mehr in die Arbeit mit Makros einfuchsen könnte ?
Mein Projekt hab ich jetzt mit viel Google, Copy/Paste und Try § Error gelöst bekommen. Ich bin aber nicht wirklich zufrieden, weil ich einige der benutzten Codes nicht im Detail verstehe.
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige