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

Ganze Spalte löschen wenn ein Wort drin vorkommt!!

Ganze Spalte löschen wenn ein Wort drin vorkommt!!
Martina
Moin ihr Lieben,
ich habe eine Frage.
Ich möchte gerne in einer Exceltabelle in einem Tabellenblatt mit dem Namen "Konten" alle Werte durchsuchen. Wenn in einer Spalte "Nicht zugeordnet" steht, soll die ganze Spalte gelöscht werden.
Ich finde keine Excelfunktion. Geht das mit VBA? Ich kenne mich da nicht so gut aus. Ich kann nur Makros aufzeichnen.
Würde mich über Anregungen oder Tipps freuen.
Vielen Dank im vorau.
Martina
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 11:56:22
Björn
Hallo,
Du findest keine Excelfunktion? Für was? Verstehe ich nicht ganz.
Die Suche-Funktion nutzen, "Konten" eingeben. Dann an der Fundstelle die Zelle löschen und "ganze Spalte" markieren oder gleich auf Spalte löschen...
Das ganze kannst Du dann auch aufzeichnen.
Gruß
Björn B.
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 11:58:54
Martina
Hallo Björn B,
aber geht das nicht automatisch?
Viele Grüße,
Martina
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 12:00:06
Björn
Hallo,
es geht automatisch, wenn du das aufzeichnest, und dann das Makro ausführst.
Wie soll das denn sonst automatisch gehen?
Gruß
Björn B.
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 12:01:16
Martina
Hallo Björn B,
die Information in den Spalten steht doch immer jeden Tag in einer neuen Spalte?
Mal steht "Nicht zugeordnet" in Spalte A, mal in C, mal in Z?
Viele Grüße,
Martina
Anzeige
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 12:24:40
Reinhard
Hallo Martina,
Sub Loesch()
Dim Such
Set Such = ActiveSheet.UsedRange.Find("Nicht zugeordnet")
If Not Such Is Nothing Then Such.EntireColumn.Delete
End Sub

Gruß
Reinhard
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 12:40:20
Martina
Hallo Reinhard,
es funktioniert. Ich habe es mal mit einem Knopf verbunden.
Allerdings passiert folgendes.
Wenn in 3 Spalten nicht zugeordnet steht, muss ich immer 3 mal drücken damit jede Spalte einzeln verschwindet. Leider nicht alle 3 Spalten auf einmal. Ist das so richtig oder macht Excel das nicht anders?
Viele Grüße,
Martina
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 12:42:22
Martina
Oh. ich sehe gerade. Hat das vielleicht etwas mit dem Used Range zu tun?
Viele Grüße,
Martina
Anzeige
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 14:07:47
Dirk
Hallo Martina versuch einfach mal das hier
Sub loeschen()
notaus = 0
sts = "Nicht zugeordnet"
ba$ = 0                  'hier bitte ersetzten in welcher Reihe er anfangen soll zu suchen ( _
reihenzahl-1)
na$ = "c" + ba$           'hier bitte den Spaltenbuchstaben ersetzten "C" duch was auch  _
immer
fund = Range(na$)
Do While notaus  1
ActiveCell.Offset(0, -1).Range("A1").Select
Loop
Reihe = Selection.Row
Range(Reihe & ":" & Reihe).Select
Selection.Delete Shift:=xlUp
ElseIf fund = "" Then
notaus = notaus + 1
End If
Loop
End Sub
in diesem Makro geht er von zelle zu Zelle schaut ob "Nicht zugeordnet" drinnsteht und löscht die dann raus
die Variable notaus die ich definiert habe ist dafür da das dass makro nicht ewig läuft sondern nach 10 nicht ausgefüllten zellen abbricht
gruß Dirk
p.s.
teste es lieber nochmal in einer kopie
Anzeige
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 14:32:25
Martina
Hi Dirk,
es springt immer mit einem Laufzeitfehler 1004 raus an der Stelle
fund = Range(na$)
"Die Methode 'Range' für das Objekt _Workseet' ist fehlgeschlagen"
?
Viele Grüsse,
Martina
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 14:47:41
Dirk
Ich hab da gerade noch nen anderen Fehler gesehen
ich meinem Makro zurläuft er die zeilen und nicht die Spalten
hab gerade wenig Zeit (bin auf der Arbeit)
ich Programmier das nachher um und Poste eine neue Version so gegen 16:30-17:00Uhr denke ich schaff ich das
gruß
Dirk
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 14:51:16
Martina
Hi Dirk,
das ist Lieb von Dir. Bitte lass Dir Zeit.
Deine Arbeit geht vor.
Viele Grüße,
Martina
Anzeige
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 14:56:02
Björn
Hallo,
ich habe mir erlaubt, den Code von Reinhard zu erweitern.
Der Code von Dirk ist doch etwas umständlich und auch etwas "unschön". Außerdem ist er langsam...
Versuch das hier:

Sub Loesch()
Dim Such
Do
Set Such = ActiveSheet.UsedRange.Find("Nicht zugeordnet")
If Not Such Is Nothing Then Such.EntireColumn.Delete
Loop Until Such Is Nothing
End Sub
Gruß
Björn B.
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 15:31:04
Martina
Hallo Björn,
vielen vielen vieeeeeeeeelen Dank :-)))
Es funktioniert Prima.
Ein Riesenfankeschön an Dirk und Dich.
Ich habe viel gelernt.
Liebe Grüße aus Köln,
Martina
Anzeige
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
12.03.2010 16:08:31
Bernd
Hallo Björn,
jetzt habe ich endlich gefunden, woran ich schon seit geraumer Zeit (fast) verzweifel.
Nur stellt sich meine Aufgaben geau anders herum: ich möchte die Spalten löschen, die den Suchbegriff in den Zellen V41:AQ41 NICHT enthalten. Ich habe deinen Code so angepasst:
>>
Dim Such
Do
Set Such = ActiveSheet.Range("V41:aq41").Find("Result")
If Such Is Nothing Then Such.EntireColumn.Delete
Loop Until Such Is Nothing
Ergebnis: die Spalten werden gelöscht!
Was muß ich wo ändern, damit es meinem Wunsch entspricht?
Wäre für deinen (euren) Tipp dankbar.
Gruß Bernd
Anzeige
Das wäre eigentlich ein neuer Beitrag...
12.03.2010 19:59:58
Björn
Hallo Bernd,
schreib bitte wenn Du eine Frage hast einen eigenen Beitrag und verweise dann in so einem Fall auf den "verwandten" Beitrag.
Aber ich will Dir trotzdem mal antworten ;-) bzw. ich versuche es mal... Du schreibst, dass Du möchtest, dass die Spalten gelöscht werden und als Ergebnis werden die Spalten gelöscht. Dazu mal ein kräftiges HÄH? von meiner Seite.
Als Ergebnis kommt also genau das raus, was Du möchtest und ich soll Dir sagen, was Du anpassen sollst?
Ich nix verstehn Dein Sprach!
Habe Deinen Code nicht getestet und weiß auch nicht, wie gut Du VBA kannst.
Wahrscheinlich ist das Problem, dass Du in Deinem Fall jede Spalte einzeln prüfen musst.
Bekommst du das hin?
Gruß
Björn B.
Anzeige
AW: Das wäre eigentlich ein neuer Beitrag...
12.03.2010 20:24:10
Bernd
Hallo Björn,
sorry, wenn ich mich mit den Spielregeln nicht so recht auskenne. Danke, dass du mir trotzdem helfen möchtest, meine VBA-Kenntnisse sind nicht sehr gut.
Sorry auch, dass ich mich wohl etwas verdreht ausgedrückt habe...
Ich möchte, dass die Spalten, die in der Zeile 41 den Eintrag "Result" haben, bleiben und die anderen gelöscht werden. Mein Code sieht so aus:
>>
Dim Such
Do
Set Such = ActiveSheet.Range("V41:aq41").Find("Result")
If Not Such Is Nothing Then Such.EntireColumn.Delete
Loop Until Such Is Nothing
und löscht die Zeilen, statt sie zu lassen und alle anderen aus dem Bereich zu löschen.
Hast du für mein Problem eine Lösung?
Gruß Bernd
Anzeige
AW: Das wäre eigentlich ein neuer Beitrag...
12.03.2010 20:41:31
Björn
Hallo,
da der Suchbegriff nur in einer bestimmten Zeile vorkommen kann, reicht hier die Prüfung des Zellinhaltes, es muss nicht über "Suchen" die Zelle gefunden werden.
Versuch mal das hier, aber denk dran, in VBA wird standardmäßig unterschieden, Result ist was anderes wie RESULT oder result. Verstanden?

Sub loeschen()
Dim Such
Dim i As Integer
'V = Spalte 22
'AQ = Spalte 43
For i = 43 To 22 Step -1
If Cells(41, i).Value = "Result" Then Cells(41, i).EntireColumn.Delete
Next i
End Sub
Gruß
Björn B.
AW: Das wäre eigentlich ein neuer Beitrag...
12.03.2010 21:10:00
Bernd
Hallo Björn, herzlichen Dank.
Hat jetzt super geklappt; auch vielen Dank für deinen Tipp zur Schreibweise. Der hilft mir auch bei meinen anderen Codes weiter!
Gruß aus Oberbayern, Bernd
Anzeige
AW: Ganze Spalte löschen wenn ein Wort drin vorkommt!!
11.03.2010 15:30:05
Martina
Hi Dirk,
vielen Dank. Die Funktion von Björn funktioniert Super.
Bitte keine Arbeits reinstecken. Vielen lieben Dank noch einmal.
Martina

127 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige