Klar, geht mit "Suchen - Ersetzen". Aber wenn ein Leerzeichen an erster Stelle in einer Zelle steht und der nachfolgende Text ebenfalls Leerzeichen enthält, dann geht das halt nicht. Also bleibt die Frage, wie ich das erste Leerzeichen entfernen kann. Dazu: Wie kann ich in EXCEL überhaupt Macros schreiben? Welche Funktion wäre dafür in einem Macro geeignet? Danke für Hinweise.
Wolfgang S. schrieb: > Wie kann ich in EXCEL überhaupt Macros schreiben? VBA. Als Einstieg ist der Macrorecorder gar nicht so schlecht, da kann man eine Klickaktion aufnehmen und erhält einen VBA-Programmschnipsel, der genau diese Aktion umsetzt. Empfehlung: Das "Menüband" namens "Entwicklertools" einblenden. (Ab 2007: Datei->Optionen->Menüband anpassen)
Hallo Wolfgang, ist ganz einfach. Wolfgang S. schrieb: > Also bleibt die Frage, wie ich das erste Leerzeichen entfernen kann. =wechseln(" Test ";" ";"";1) Erklärung Ersetze im String " Test " das Leerzeichen (" ") durch gar nichts (""), aber nur beim 1. Auftreten. Ergebniskontrolle mit =länge() Gruß Peter
Minimalist schrieb: > Excel hat dafür die Funktion "GLÄTTEN()". zum Leerzeichen in Zellen entfernen???
Hallo, ich habe ein Makro, welches in einer Spalte (bei mir "AD") in den Zeilen 2 bis 2000 die Leerzeichen am Ende einer Artikelnummer löscht. Passe es einfach auf Deine Bedürfnisse an (LTrim()). Evtl. gibt es andere, bessere Lösungen - aber meine Lösung funktioniert. Sub ArtikelNr_Leerzeichen_entfernen() ' entfernt Leerzeichen am Ende der Artikelnummer Dim i As Integer Dim strZelle As String For i = 2 To 2000 strZelle = "AD" & i Range(strZelle).Value = RTrim(Range(strZelle).Value) Next i End Sub
npn schrieb: > Minimalist schrieb: >> Excel hat dafür die Funktion "GLÄTTEN()". > > zum Leerzeichen in Zellen entfernen??? Sorry, du hast ja recht! Ich war nur so verwundert, weil "Glätten" eher nach "Mittelwert" klingt als nach Stringbearbeitung... Wieder was gelernt :-)
was microsoft produkten fehlt sind regex. scnr, aber unter z.b. linux sähe das ungefähr so aus:
1 | /^\s//g |
plus ein wenig datenaufbereitung allerdings.
Soweit ich die Vorschläge zu EXCEL verstehe, benötigen diese Funktionen die Ausgangszelle, welche dann jedoch erhalten bleiben muss. Ich möchte den Inhalt der Ausgangszelle ändern, deshalb mein Gedanke mir den Macros. Wie kann man das machen?
Wolfgang S. schrieb: > Soweit ich die Vorschläge zu EXCEL verstehe, benötigen diese > Funktionen > die Ausgangszelle, welche dann jedoch erhalten bleiben muss. > > Ich möchte den Inhalt der Ausgangszelle ändern, deshalb mein Gedanke mir > den Macros. > > Wie kann man das machen? Per Makro. Zwei geschachtelte Schleifen, die zusammen alle Zellen durchlaufen. Innen drinn für jede Zelle eine Schleife, die buchstabenweise durch den Zelltext geht und bei Erreichen des ersten Leerzeichens von links den Text ohne das Leerzeichen ausgibt (die Zelle überschreibt) und dann die Schleife verlässt. Abbruch mit Nichtstun bei Erreichen des Textendes.
@Alle die ihren Senf dazugegeben haben und speziell Wolfgang S. lest bitte meinen Beitrag nochmal richtig. Das Makro löscht die Leerzeichen am Ende des Strings. Die Spalte wird von Zeile 2 bis Zeile 2000 durchlaufen. Eine Hilfsspalte braucht man nicht.
Hallo Wolfgang S., wenn Dein erstes Leerzeichen auch an der ersten Stelle der Zeichenkette steht, kann dank Benutzung von LTRIM die zeichenweise Suche in der Zelle entfallen.
mit Word! Vorher war die erste Spalte zu bearbeiten. 1. Davor habe ich eine Spalte eingefügt und einfach durchnummeriert. 2. Dann habe ich meine Excel-Tabelle als csv-Datei gespeichert. Die Spaltentrennung erfolgt dabei durch ein Semikolon. 3. Die csv-Datei mit Word geöffnet. 4. Die Kombination "; " wurde dann einfach durch ";" ersetzt. 5. alles wieder mit EXCEL öffnen. Das war's. P.S. ca. 1500 Einträge, davon unregelmäßig etwas 900 mit Leerzeichen am Anfang bearbeitet.
Hallo Wolfgang, Wolfgang S. schrieb: > mit Word! danke für die Rückmeldung. Das ist sicherlich eine kreative und effektive Lösung.
Peter M. schrieb: > Hallo Wolfgang, > > Wolfgang S. schrieb: >> mit Word! > > danke für die Rückmeldung. Das ist sicherlich eine kreative und > effektive Lösung. um nochmal auf regex zurück zu kommen… ich hätte das unter linux mit geany gemacht, das windows pendant ist möglicherweise notepad++. spalte aus der tabellenkalkulation kopiert, in geany als text eingefügt, dann suchen und ersetzen mit regex (kann notepad++ das?) und das ergebnis wieder als spalte in die tabellenkalkulation eingefügt. word ist finde ich suboptimal, weil es keine reine textverarbeitung ist. sollte man mal 50k zeilen zu bearbeiten haben verschluckt sich das möglicherweise.
Hallo c.m., c.m. schrieb: > um nochmal auf regex zurück zu kommen… > ich hätte das unter linux mit geany gemacht, das windows pendant ist > möglicherweise notepad++. > spalte aus der tabellenkalkulation kopiert, in geany als text eingefügt, > dann suchen und ersetzen mit regex (kann notepad++ das?) und das Notepad++ kann suchen und ersetzen. Reguläre Ausdrücke kann die Software auch, ich aber nicht. :) Aber der Trick besteht doch darin, dass Wolfgang mit seiner Zusatzspalte das erste Leerzeichen eindeutig gemacht hat, so dass er die dumme "Suchen und Ersetzen"-Funktion anwenden konnte. Mit diesem Kunstgriff kann alles, was "Suchen und Ersetzen" beherrscht, eingesetzt werden. Gruß Peter P.S.: Wofür steht eigentlich c.m.?
c.m. schrieb: > word ist finde ich suboptimal, weil es keine reine textverarbeitung ist. Ja, warum habe ich wohl Wird gewählt? In Word kann ich auch alle Sonderzeichen suchen und austauschen. Eine einfache Textverarbeitung kann das nicht!
W. S. schrieb: > c.m. schrieb: >> word ist finde ich suboptimal, weil es keine reine textverarbeitung ist. > > Ja, warum habe ich wohl Wird gewählt? > In Word kann ich auch alle Sonderzeichen suchen und austauschen. > Eine einfache Textverarbeitung kann das nicht!
1 | Ja, warum habe ich wohl Wird gewählt? |
2 | In Word kann ich auch alle Sonderzeichen suchen und austauschen. |
3 | Eine einfache Textverarbeitung kann das nicht! |
4 | |
5 | [^a-zA-Z0-9\s] |
6 | |
7 | Ja warum habe ich wohl Wird gewhlt |
8 | In Word kann ich auch alle Sonderzeichen suchen und austauschen |
9 | Eine einfache Textverarbeitung kann das nicht |
du hast word gewählt weil das etwas ist was du kennst. der tip mit den regex-fähigen texteditoren ist nur ein vorschlag.
c.m. schrieb: >> Ja, warum habe ich wohl Wird gewählt? >> In Word kann ich auch alle Sonderzeichen suchen und austauschen. >> Eine einfache Textverarbeitung kann das nicht! > Ja, warum habe ich wohl Wird gewählt? > In Word kann ich auch alle Sonderzeichen suchen und austauschen. > Eine einfache Textverarbeitung kann das nicht! > > [^a-zA-Z0-9\s] > > Ja warum habe ich wohl Wird gewhlt > In Word kann ich auch alle Sonderzeichen suchen und austauschen > Eine einfache Textverarbeitung kann das nicht Zitierst du immer alles dreimal? :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.