Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1380to1384
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

In Tabellenblätter 8-Ende ersetzen

In Tabellenblätter 8-Ende ersetzen
22.09.2014 22:58:24
Elias
Hallo zusammen
ich glaube ich habe etwas sehr einfaches, wo ich momentan einfach nen Knoten in meinem Hirn hab...
Ich müsste in den Tabellenblättern 8 bis Ende , deren Name ich nicht weiss, alle falschen Leerschläge per vba durch "" ersetzen.
Kann mir da jemand weiterhelfen? Das sollte doch eigentlich nicht schwierig sein, oder?
Danke schonmals herzlichst im Voraus.
LG Elias

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

Betreff
Datum
Anwender
Anzeige
AW: In Tabellenblätter 8-Ende ersetzen
22.09.2014 23:15:46
Adis
Hallo
was sind bitte falsche Leerschläge? Ich kann mir darunter nichts vorstellen.
Gruss Adis

AW: In Tabellenblätter 8-Ende ersetzen
22.09.2014 23:19:05
Elias
Hi Adis
Es hat zwischendurch statt einer leere Zelle einen Leerschlag drin, der nicht da sein sollte. Im Makrorekorder sieht dieses ersetzen so aus:
Cells.Replace What:=" ", Replacement:="", LookAt:=xlPart, SearchOrder:= _
xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

AW: In Tabellenblätter 8-Ende ersetzen
23.09.2014 12:50:12
Adis
Hallo verstanden
die Antwort lag übrigens schon vor, und zwar hier: Cells.Replace What:=" ",
Es inspirierte mich den Gedanken über For Next Schleife zu Ende zu denken.
Wichtig ist dabei das xlPart durch xlWhole (nur ganze Zelle) ersetzt werden muss
Sonst werden auch alle Leerzeichen im vorhanden Text gelöscht. Sicher nicht erwünscht.
Es gibt zwei makro Versionen, je nachdem ob die Blaetter ab Position 8 bis Ende stehen,
oder sie beliebig angeordnet sind. Dafür ist die zweite Lösung gedacht.
Bitte zur Sicherheit erst einmal in einer Kopie Datei testen ab alls klappt.
Prüfen ob keine Daten veraendert wurden, ob im Text alle Space erhalten sind.
Sub Fortlaufend_bisEnde_löschen()
'Dieses Programm setzt voraus das alle zu löschenden Blaetter von Blatt 8 bis Ende stehen
For i = 8 To Sheets.Count
Sheets(i).Cells.Replace What:=" ", Replacement:="", LookAt:=xlWhole
Next i
End Sub
Sub Geschützt_bisEnde_löschen()
'Bei diesem Programm können die Blaetter beliebig angeordnet sein, egal!
'die zu schützenden Blastter werden namentlich erfasst und übersprungen
'der Trick besteht darin das beim namentlichen Blatt -kein- Befehl steht
'damit wird nur die ELSE Anweisung ausgeführt, alle unbenannten gelöscht
For i = 1 To Sheets.Count
Select Case Sheets(i).Name
Case "Tabelle1"
Case "kundendaten"
Case "Musterblatt"
Case "Beispielblatt"
Case "Tabelle3"
Case Else   'hier wird über ELSE nur meine "Tabelle2" gelöscht
Sheets(i).Cells.Replace What:=" ", Replacement:="", LookAt:=xlWhole
End Select
Next i
End Sub
Gruss Adis

Anzeige
AW: In Tabellenblätter 8-Ende ersetzen
23.09.2014 13:59:41
Elias
Hi Adis, danke vielmals. Ich hatte irgendwie einen Knoten beim Blätter nach Reihenfolge anwählen.
Läuft super.
Gruss Elias

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige