Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1368to1372
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

wo ist der fehler??

wo ist der fehler?
01.07.2014 20:38:29
Spenski
hallo ich hab eine datei mit 4 tabellenblättern. eins davon heisst GAE
mit diesem code lösche ich aus einer UserForm aus einen namen den ich in Textbox5 eingebe aus einer dynamischen tabelle in GAE.
Private Sub CommandButton4_Click() 'löschen
Dim lngZeile As Long
Dim Suchergebnis As Range
With Worksheets("GAE")
With .Range("N2:N" & .Cells(.Rows.Count, 14).End(xlUp).Row)
Set Suchergebnis = .Find(TextBox5.Value, lookat:=xlWhole, LookIn:=xlValues)
If Not Suchergebnis Is Nothing Then
Cells(Suchergebnis.Row, 14).Delete shift:=xlUp
End If
End With
End With
TextBox5.Text = ""
End Sub
dieser code klappt nur wenn ich vom tabellenblatt GAE aus die UF starte.
kann man da was umschreiben das egal ist welches tabellenblatt gerade aktiv ist?
gruss

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: wo ist der fehler?
01.07.2014 20:45:16
Daniel

Cells(Suchergebnis.Row, 14).Delete shift:=xlUp

da fehlt die Angabe des Tabellenblatts, daher bezieht sich dieses Cells auf das aktive Blatt.
Aber du denkst mal wieder zu kompliziert.
da du das Suchergebnis in der Spalte 14 ermittelst, beschreiben Suchergebnis und Cells(Suchergebnis.Row, 14) die selbe Zelle (wenn das selbe Blatt gemeint ist) und
Suchergebnis.Delete Shift:=xlup
sollte ausreichen.
Gruß Daniel

AW: wo ist der fehler?
01.07.2014 20:53:12
Spenski
okay danke klappt jetzt.
dachte er bezieht sich mit With Worksheets("GAE") automatisch auf das tabellenblatt
gruss und danke

Anzeige
AW: wo ist der fehler?
01.07.2014 21:00:53
Daniel
da du mit der WIHT-Klammer arbeitest, müsste zumindest der Punkt davor.
klappt aber hier auch nicht, weil du zwischenzeitlich das WITH-Objekt auf den zu durchsuchenden Zellbereich in Spalte N geändert hast.
ein .Cells() könnte zwar funktionieren, würde aber wahrscheinlich auf die Falsche Zellen verweisen, da dein Zellebereich nicht in Zeile 1 beginnt.
in deinem Fall müsstest du über den Zellbereich des WITH-Objekts auf das Blatt verweisen:
.Worksheet.Cells(...).Delete
Gruß Daniel

AW: wo ist der fehler?
01.07.2014 21:04:21
Spenski
danke für die erklärung :D

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige