Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

SQL-Abfrage in Excel mit Replace

Forumthread: SQL-Abfrage in Excel mit Replace

SQL-Abfrage in Excel mit Replace
17.09.2014 12:28:38
Martin
Hallo,
ich scheitere in Excel-VBA jetzt schon eine ganze Weile mit dem Versuch beim Auslesen einer Access-Datenbank die Leerzeichen einer Spalte zu ersetzen.
Folgender Ausdruck mit Trim klappt einwandfrei:
sSql = "SELECT Trim(EMail), Vorname, Nachname, Geschlecht FROM Tabelle"
Aber eigentlich beabsichtige ich im Feld Email die enthaltenen Leerzeichen durch Replace auch aus den Texten zu entfernen. Eigentlich sollte es doch so klappen:
sSql = "SELECT Replace(EMail,Chr(32),"""") As EMail, Vorname, Nachname, Geschlecht FROM Tabelle"
Leider erhalte dann jedoch die einen Laufzeitfehler "Undefinierte Funktion 'Replace' in Ausdruck". Ich weiß jetzt echt nicht mehr weiter und hoffe, dass mir von euch jemand helfen kann.
Viele Grüße
Martin

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Geht wohl nicht... ;-(
17.09.2014 12:44:56
Martin
Hallo,
ich probiere die ganze Zeit herum und stelle erst jetzt fest, dass Replace in Access anscheinend nicht unterstützt wird:
http://www.sql-server-performance.com/forum/threads/replace-access-vs-sql-2000.10656/
- das wäre ja wirklich ärgerlich. Kennt vielleicht jemand eine Alternative für mein Problem?
Viele Grüße
Martin

Anzeige
AW: Geht wohl nicht... ;-(
17.09.2014 13:50:04
Peter
Hallo
Ersetz die Leerzeichen in deinem Makro nachdem du die Antwort von Access erhalten hast. (VBA kennt ein Replace)

AW: Geht wohl nicht... ;-(
17.09.2014 19:17:45
Martin
Hallo Peter,
eigentlich ist der SQL-Befehl etwas länger:
sSql = "SELECT Trim(EMail), Vorname, Nachname, Geschlecht FROM Tabelle Where Not Trim(EMail) IN (" & strIn & ") ORDER BY Trim(EMail) ASC"
Es geht darum, dass nur die richtige Treffer gefiltert werden. Durch den IN-Abgleich mit ca. 2.500 Email-Adressen hilft mir dein Vorschlag leider nicht weiter. Ich hatte den vollständigen SQL-Befehl nicht gepostet, damit es übersichtlicher bleibt ;-)
Viele Grüße
Martin

Anzeige
AW: Geht wohl nicht... ;-(
17.09.2014 19:39:49
JoWE
Hallo Martin,
schreibe Dein Trim-Ergebnis doch in eine Variable, die Du dann in den SQL-String übergibst.
Etwa so:
Sub test
Dim vbEmail As String
vbEmail = Trim(Email)
sSql = "SELECT " & vbEmail & ", Vorname, Nachname, Geschlecht FROM Tabelle Where Not " _
& vbEmail & " IN (" & strIn & ") ORDER BY " & vbEmail & " ASC"
End Sub
Gruß
Jochen

Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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