Hallo liebe Helfer,
Hallo Manu,
habe eine Bitte, ich habe in der Tabelle bzw. Tabellenblatt
Eingabemaske in der Zelle A3 einen Bereich, wo ich eine
Objektnr. eingeben kann. Nun muss ich ein Makro erstellen,
Also: Quelle ist Blatt „Eingabemaske“, Zelle „A3“. Hey, die Tabellennamen kommen mir irgendwie bekannt vor…
bzw. mit VBA Code verweisen das des jetzt in den Tabellen
Flächen, Objekt und Sonstige-Daten nach diesem Datensatz
Also Zielblätter wären „Flächen“, „Objekt“ und „Sonstige-Daten“.
gesucht wird, und wenn er gefunden wird soll die Ganze Zeile
gelöscht werden.
Dh. wenn in der Tabelle Eingabemaske Zelle A3 die Objektnr. 32
steht, dann drücke ich auf den Löschbutton nun muss das Makro
Den Button gibt es schon?
Starten und in den Tabellen Flächen, Objekt und Sonstige-Daten
nach der Zelle mit der Objektnr. 32 suchen wenn er diese
findet, soll er sie dann Löschen.
In der Tabelle Flächen und Objekt ist die Objektnr. in Spalte
A und in der Tabelle Sonstigen-Daten ist die Objektnr. in der
Spalte G. Ich weiß nicht ob diese info etwas hilft.
Ich bin ein Anfänger und deswegen hoffe ich, dass ihr mir
helfen könnte.
Mit Alt + F11 wechselst Du in die Entwicklungsumgebung.
Hier musst Du im Projekt-Explorer (Fenster links oben) Deine Datei anklicken, und dann mit Einfügen // Modul eines erzeugen (wenn nicht schon vorhanden). Dann Doppelklick auf das Modul. Anschließend kannst Du den Text unten in dieses Modul kopieren.
Entweder muss der Button auf dieses Makro verweisen, oder Du rufst es mit Alt + F8 auf. Zurück zu Excel kommst Du wieder mit Alt + F11.
Bitte zum Testen eine Kopie verwenden.
Mit freundlichen Grüßen und vielen Dank im Voraus
Manu Haller
MfG MwieMichel
Option Explicit
’ globale Variablen
Dim ObjektNummer As String
Dim Spalte As Long, Zeile As Long
Sub DatenSatzLoeschen() 'Name des Makros
ObjektNummer = ActiveWorkbook.Sheets(„Eingabemaske“).Range(„A3“).Value
’ Welches Objekt gelöscht werden soll
If ObjektNummer = „“ Then Exit Sub ’ wenn leer, dann nix machen
’ MsgBox (ObjektNummer)
Sheets(„Flächen“).Activate ’ auf Blatt Flächen
Spalte = 1 ’ Spalte A untersuchen
Loeschen ’ aufrufen einer Schleife zum löschen
Sheets(„Objekt“).Activate ’ auf Blatt Objekte, Spalte A
Loeschen
Sheets(„Sonstige-Daten“).Activate ’ Blatt Sonstige
Spalte = 7 'Spalte G
Loeschen
End Sub
Private Sub Loeschen() ’ dieses Makro wird oben aufgerufen
With ActiveWorkbook.ActiveSheet ’ auf diesem Blatt
For Zeile = 1 To .UsedRange.Rows.Count ’ von 1 bis Ende
If Cells(Zeile, Spalte).Value = ObjektNummer Then
’ MsgBox („Zeile " & Zeile & " wird gelöscht.“)
Rows(Zeile).Delete ’ ganze Zeile Löschen
End If
Next
End With
End Sub