Löschen Funktion fehlerhaft im Makro
#1
Hallo zusammen,

ich habe ein Makro aufgezeichnet und beim abspielen des Makro hängt es sich währen der Löschen Funktion auf.

Das Makro kann mit der Tastenkombination STRG+UMSCH+Q aktiviert werden.

Vielleicht mag mir einer dabei helfen  Sleepy

Danke euch!


Angehängte Dateien Thumbnail(s)
   

.xlsm   2019_STÜCKZAHL ANALYSE - Kopie für Forum.xlsm (Größe: 1,97 MB / Downloads: 4)
Top
#2
Hallo,

statt der markierten und der Zeile davor versuche es mit dieser

Code:
Rows(Range("Verkaufskopf").Row).Delete
Gruß Stefan
Win 10 / Office 2016
Top
#3
Hallo,

mit aufgezeichneten Makros ist das immer so eine Sache. Beschreibe doch bitte mal, was genau passieren soll, bzw. nach welchen Kriterien sollen eilen gelöscht werden. Das Makro selektiert die gesamte Liste, das ist sicher nicht gewollt.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Top
#4
(20.11.2019, 10:24)Klaus-Dieter schrieb: Hallo,

mit aufgezeichneten Makros ist das immer so eine Sache. Beschreibe doch bitte mal, was genau passieren soll, bzw. nach welchen Kriterien sollen eilen gelöscht werden. Das Makro selektiert die gesamte Liste, das ist sicher nicht gewollt.

So gesehen ist es gewollt das er die Daten in der Liste löscht, aber er soll nur die Daten die nach dem Filtern bestehen bleiben löschen.

Ich bekomme durch das aktualisieren der Liste immer neue Daten. Hier sind auch Daten enthalten die ich nicht benötige, deshalb nehme ich alle Felder in denen "EDI" in VKweg Code raus, sodass nur noch die restlichen stehen bleiben. Dann nehme ich in Verkäufercode "A" raus, somit habe ich jetzt alle Daten angezeigt die ich nicht benötige und genaus diese sollen gelöscht werden.

Wenn ich das Händisch tue indem ich einfach STRG+A innerhalb der Liste markiere und anschließend Lösche geht alles so wie es soll, dieser Schritt funktioniert nur leider nicht nachdem ich das im Makro aufzeichne.

(20.11.2019, 10:16)Steffl schrieb: Hallo,

statt der markierten und der Zeile davor versuche es mit dieser

Code:
Rows(Range("Verkaufskopf").Row).Delete

Danke, jedoch hat es nicht geklappt.

Ich weiß nicht wie das Makro jetzt durchläuft, aber er löscht die Daten so nicht  :/
Top
#5
Hallo,

(20.11.2019, 10:31)SemmyW schrieb: Ich weiß nicht wie das Makro jetzt durchläuft, aber er löscht die Daten so nicht  :/

setze dir einen Haltepunkt dann kannst Du es nachverfolgen.
Gruß Stefan
Win 10 / Office 2016
Top
#6
Hallöchen,

eventuell auch so

ActiveSheet.ListObjects("Verkaufskopf").DataBodyRange.SpecialCells(xlCellTypeVisible).Delete
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#7
Hallo André,

so was empfahl Marco schon hier: #3 Undecided

Gruß Uwe
Top
#8
Hallo

ersetze die gelb markierte Code Zeile bitte mal OHNE EntireRow durch:  Selection.Delete   
Bei mir kam dann eine Abfrage ob die Zeilen wirklich gelöscht werden spllen? Nach Okay wurden 7.000 Zeilen gelöscht.
Ich hatte in einem anderen Thread dasselbe Problem. Bei "ListObjekt Tabellen" klappt EntireRow offenbar nicht!

mfg Gast 123
[-] Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:
  • SemmyW
Top
#9
(20.11.2019, 23:32)Gast 123 schrieb: Hallo

ersetze die gelb markierte Code Zeile bitte mal OHNE EntireRow durch:  Selection.Delete   
Bei mir kam dann eine Abfrage ob die Zeilen wirklich gelöscht werden spllen? Nach Okay wurden 7.000 Zeilen gelöscht.
Ich hatte in einem anderen Thread dasselbe Problem. Bei "ListObjekt Tabellen" klappt EntireRow offenbar nicht!

mfg Gast 123

Ich fasse es nicht. So simpel kann es gehen.

Hat geklappt und bereitet die Daten genau so auf wie Sie sollen!

Danke dir!  :15:


Alles anderen auch danke schön für die Unterstützung  :19:

Beste Grüße!
Top
#10
Hallöchen,

Zitat:so was empfahl Marco schon hier: #3

wobei man in dem Fall die Angabe .Rows weglassen kann Smile .Columns würde übrigens auch die Zeilen löschen, kommt auch eine entsprechende "Zeilen"-Meldung  :15:

Was sonst noch ist:
a) wenn durch das Löschen alle Zeilen entfernt werden sollen bleibt eine Zeile DataBodyRange als leere Zeile übrig.
b) im Fall a) kommt ein Fehler wenn im Bereich direkt unter der Tabelle eine weitere Tabelle gefiltert ist. Ist die "untere" Tabelle nicht gefiltert, klappt das Löschen.  
c) wenn eine gefilterte Tabelle zwar unter dem Bereich steht, aber nicht direkt sondern daneben,  funktioniert der Fall a).
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste