Anzeige
Archiv - Navigation
1716to1720
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 Variable nicht definiert

VBA Variable nicht definiert
14.10.2019 14:21:30
Waldow
Hallo Excelfreunde,
habe hier einen Code und finde den Fehler nicht. Frage: Kann mir dabei einer helfen,
Danke vielmals.
mfg waldow
Fehlermeldung: "Variable nicht definiert" in der Zeile
"""Columns("A:F").Delete Shift:=x1ToLeft
Sub W_Löschen()
Dim i As Integer, Erste As Boolean
Erste = True
With Worksheets("Tabelle5")
For i = 1 To 22
If InStr(1, Cells(1, i), "Währung") > 0 Then
If Not Erste Then
Range(Columns(i), Columns(i)).Select
Columns("A:F").Delete Shift:=x1ToLeft
i = i - 1
End If
Erste = False
End If
Next i
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Variable nicht definiert
14.10.2019 14:23:23
peterk
Hallo
"xlToLeft" "L" statt "1"
AW: VBA Variable nicht definiert
14.10.2019 17:58:48
Waldow
Hallo peterk,
danke für den Hinweis, ich habe ein L geschrieben und die Fehlermeldung war weg, dafür wollte jetzt zwischen Next i ein End With haben, habe ich auch gemacht aber jetzt gibt es trotzdem keine Reaktion mit dem Button.? Was fehlt denn jetzt noch.
mfg waldow
Next I
End With
End Sub
AW: VBA Variable nicht definiert
14.10.2019 18:37:11
Zwenn
Hallo Waldow,
soweit ich Dein Vorhaben nachvollziehen kann, würde ich es so schreiben:

Sub W_Loeschen()
Dim i As Integer
With Worksheets("Tabelle5")
For i = 2 To 22
If InStr(1, .Cells(1, i), "Währung") > 0 Then
.Range(.Columns(i), .Columns(i)).Select
.Columns("A:F").Delete Shift:=x1ToLeft
i = i - 1
End If
Next i
End With
End Sub

Das Geraffel mit der Boolean Variable diente dem Auslassen der ersten Spalte richtig? Das kannst Du Dir sparen, wenn Du die Schleife nicht von 1 sondern von 2 bis 22 laufen lässt.
Einen With Block musst Du so abschließen, dass er sich mit keinem anderen Block überschneidet. Genau wie bei Schleifen. Deshalb verwendet man die Einrückungen. So kannst Du direkt sehen, welcher Block von wo bis wo geht. Öffnend und schließend müssen in den Einrückungen immer direkt untereinander stehen, also gleich weit eingerückt sein.
Wenn Du mit With arbeitest, musst Du auch die betreffenden Zellen usw. mit einem Punkt davor schreiben, damit die With Anweisung weiß, wo sie den Codefetzen einsetzen soll. Ohne die Punkte arbeitet der Code sonst auf der Tabelle, aus der Du ihn aufgerufen hast.
Ich hoffe das hilft Dir weiter.
Viele Grüße,
Zwenn
Anzeige
AW: VBA Variable nicht definiert
15.10.2019 18:26:07
Waldow
Hallo Zwenn,
erstmal möchte ich mich Bedanken für deine ausführlichem Erklärungen, habe alles korigiert, bis jetzt keine Fehlermeldung, aber mein Button 1 starter nicht, was muss ich da noch mal machen.
mfg waldow
und trotzdem
AW: VBA Variable nicht definiert
15.10.2019 19:25:52
Zwenn
Hallo Waldow,
Deine Frage lässt sich so nicht beantworten. Der Grund ist, dass niemand weiß, was "Dein Button" denn eigentlich machen soll und darüber hinaus, wie Deine Daten eigentlich aussehen.
Ich habe ja einfach überall einen Punkt für die With-Anweisung gesetzt. Vielleicht gibt es aber auch Zeilen, die sich auf die Tabelle beziehen, aus der Du das Makro aufrufst? Vielleicht muss auch etwas anders programmiert werden? Das sind Fragen (und wahrscheinlich nicht erschöpfend) die so niemand beantworten kann.
Es ist also in Deinem Interesse, wenn Du eine Beispielmappe hochlädst, die Deinen gesamten Code inklusive "des Buttons" enthält. Darüber hinaus wäre es extrem hilfreich, wenn Du erklärst, was Du eigentlich erreichen willst. Wie liegen Deine Daten vor und in welche Form willst Du sie bringen?
Viele Grüße,
Zwenn
PS: Bin gerade anderweitig gebunden, aber meine Hinweise sind auch gültig, wenn jemand anders eine Idee zu Deinem Problem bekommen soll.
Anzeige
AW: VBA Variable nicht definiert
16.10.2019 13:21:39
Waldow
Hallo Zwenn,
habe nochmals vielen Dank für deine Mühe und die Erleuterungen, ich werde mich zu einen späteren Zeitpunk noch einmal melden.
mfg waldow

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige