Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

per VBA Anführungszeichen im Sting entfernen

Forumthread: per VBA Anführungszeichen im Sting entfernen

per VBA Anführungszeichen im Sting entfernen
22.05.2003 13:32:09
Panicman
Hallo

ich habe das Problem, das ich per Makro einen Text aus einer Zelle auslese und diesen Text als Namen für die Datei zum speichern benutze. Manchmal enthält der Text mittendrin Anführungszeichen (z.B. "Ich bin zu "blöd" für VBA"). Diese "-Zeichen stehen leider nicht immer an der gleichen stelle.
Wie lösche ich diese "-Zeichen aus dem String, sodaß nur "Ich bin zu blöd für VBA" übrig bleibt ?

Danke schon mal im vorraus
Holger

Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: per VBA Anführungszeichen im Sting entfernen
22.05.2003 13:36:38
Bernd Held

Hallo Holger,

sowas in der Art sollte funktionieren:

ActiveCell.Value = _
Application.Substitute(ActiveCell.Value, """", "")

Viele Grüße
Bernd
MVP für Microsoft Excel
Excel-Tipps, Das VBA-Kompendium und Makro-Einsteigerbücher mit Leseproben(PDF) unter: http://held-office.de



Anzeige
Re: per VBA Anführungszeichen im Sting entfernen
22.05.2003 13:40:32
Martin Beck

Hallo Holger,

Text in A10:

Gruß
Martin Beck

Re: per VBA Anführungszeichen im Sting entfernen
22.05.2003 13:42:19
Knut

Am Anfang und am Ende sollen sie aber erhalten bleiben?
Knut

Re: per VBA Anführungszeichen im Sting entfernen
22.05.2003 13:53:43
Panicman

Hallo Bernd,

DANKE hat funktioniert. Aber warum """" (4 mal) ? Ich habe es immer mit """ (3 mal) probiert.

Gruß
Holger

Anzeige
Re: per VBA Anführungszeichen im Sting entfernen
22.05.2003 13:54:13
Panicman

Hallo Martin,

DANKE hat funktioniert. Aber warum """" (4 mal) ? Ich habe es immer mit """ (3 mal) probiert.

Gruß
Holger

Re: per VBA Anführungszeichen im Sting entfernen
22.05.2003 14:00:29
Martin Beck

Hallo Holger,

nur eine Vermutung. """ könnte in VBA ja bedeuten LEERSTRING und " oder " und LEERSTRING, ist also nicht eindeutig. Wenn man hingegen """" schreibt, "weiß" Excel/VBA, daß die beiden äußeren " einen String begrenzen und "" in der Mitte für ein " steht.

Wenn ich das so lese, finde ich den Erklärungsversuch selber blöd. ;-) Vielleicht weiß Bernd mehr. Ansonsten nimm's als Bill-gegeben hin ;-)

Gruß
Martin Beck


Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Anführungszeichen im String per VBA entfernen


Schritt-für-Schritt-Anleitung

Um Anführungszeichen aus einem String in Excel mithilfe von VBA zu entfernen, kannst Du die Substitute-Funktion verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke Alt + F11, um den VBA-Editor zu öffnen.
  2. Erstelle ein neues Modul, indem Du mit der rechten Maustaste auf „VBAProject“ klickst und „Einfügen“ wählst.
  3. Wähle „Modul“ aus.
  4. Füge den folgenden Code in das Modul ein:
Sub AnfuehrungszeichenEntfernen()
    ActiveCell.Value = Application.Substitute(ActiveCell.Value, """", "")
End Sub
  1. Schließe den VBA-Editor und zurück in Excel, markiere die Zelle, die den Text mit Anführungszeichen enthält.
  2. Drücke Alt + F8, wähle „AnfuehrungszeichenEntfernen“ aus und klicke auf „Ausführen“.

Jetzt sollten alle Anführungszeichen im ausgewählten String entfernt sein.


Häufige Fehler und Lösungen

  • Fehler: Das Skript funktioniert nicht, weil die Anführungszeichen nicht entfernt werden.

    • Lösung: Stelle sicher, dass Du im Code die korrekte Anzahl an Anführungszeichen verwendest. Bei VBA musst Du vier Anführungszeichen """" verwenden, um ein einziges Anführungszeichen im String darzustellen.
  • Fehler: Es werden auch Anführungszeichen am Anfang und Ende entfernt.

    • Lösung: Wenn Du nur die Anführungszeichen in der Mitte entfernen möchtest, musst Du eine andere Methode verwenden. Siehe „Alternative Methoden“ weiter unten.

Alternative Methoden

Falls Du Anführungszeichen nur in bestimmten Positionen entfernen möchtest, kannst Du eine benutzerdefinierte Funktion erstellen. Hier ein Beispiel:

Function AnfuehrungszeichenMitAusnahme(str As String) As String
    Dim result As String
    Dim i As Integer
    For i = 1 To Len(str)
        If Mid(str, i, 1) <> """" Then
            result = result & Mid(str, i, 1)
        End If
    Next i
    AnfuehrungszeichenMitAusnahme = result
End Function

Du kannst diese Funktion in einer Zelle verwenden, indem Du =AnfuehrungszeichenMitAusnahme(A1) eingibst, wobei A1 die Zelle mit dem Text ist.


Praktische Beispiele

Angenommen, Du hast in Zelle A1 den Text:
"Ich bin zu "blöd" für VBA"

Nach der Ausführung des Makros wird der Text zu:
Ich bin zu blöd für VBA

Eine alternative Verwendung könnte sein, dass Du nur die Anführungszeichen in der Mitte entfernst, während die am Anfang und Ende erhalten bleiben.


Tipps für Profis

  • Nutze die Replace-Funktion in VBA, um mehrere Zeichen in einem String auf einmal zu ersetzen.
  • Bei komplexeren Anforderungen kannst Du reguläre Ausdrücke verwenden, um Anführungszeichen gezielt zu filtern.
  • Halte Deinen VBA-Code sauber und gut dokumentiert, um die Wartung zu erleichtern.

FAQ: Häufige Fragen

1. Warum muss ich vier Anführungszeichen verwenden?
In VBA sind Anführungszeichen Teil der Syntax. Um ein einzelnes Anführungszeichen darzustellen, benötigst Du zwei Anführungszeichen. Daher benötigst Du für den Befehl Application.Substitute vier Anführungszeichen.

2. Kann ich das Ergebnis direkt in eine andere Zelle schreiben?
Ja, Du kannst den Code anpassen, um das Ergebnis in eine andere Zelle zu schreiben, indem Du Range("B1").Value = ... verwendest, um das Ergebnis in Zelle B1 zu speichern.

3. Funktioniert dies auch in Excel für Mac?
Ja, der VBA-Code ist plattformübergreifend und sollte sowohl in Windows- als auch in Mac-Versionen von Excel funktionieren, solange VBA aktiviert ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige