Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Nach SQL-Abfrage Zeilenumbruch ersetzen

Nach SQL-Abfrage Zeilenumbruch ersetzen
19.04.2018 13:45:58
Leo
Hallo!
Ich hole mir mit einer SQL-Abfrage Daten aus unserem ERP-System. Dabei gehen leider die Zeilenumrüche verloren.
Nun habe ich die SQL-Abfrage schon so angepasst, dass CHAR(13) mit Zeichen(10) ersetzt wird.
SELECT Artikel.ArtikelNr, Artikel.Bezeichnung, REPLACE(Artikel.Interner_Text4,CHAR(13),'Zeichen( _
_
10)')
FROM Artikel Artikel
Somit habe ich in C2 folgenden Wert:
Bei Zimmertemperatur trocken und lichtgeschütz lagern.Zeichen(10)Nach dem Öffnen gekühlt lagern und rasch verbrauchen.
Anschließend lasse ich mit einem Makro Zeichen(10) durch "&Zeichen(10)&" ersetzten, sowie ein = voransetzen und mit einem " beenden.
Sub Makro1()
Dim alteFormel As String
Dim neueFormel As String
alteFormel = Range("C2").Value
neueFormel = "=""" & Replace(alteFormel, "Zeichen(10)", """&Zeichen(10)&""") & """"
Range("C2").Formula = neueFormel
End Sub
Als Ergebnis zeigt mir Excel dann #NAME an, obwohl die Formel eigentlich perfekt ist.
Mache ich einen Doppelklick in die Zelle und bestätige mit Enter, wird die Formel einwandfrei angewandt und ich habe mein Wunschergebnis.
Wie kann ich Excel dazu bringen die Formel gleich ordentlich anzuwenden? (Auch Evaluate hat übrigens das gleiche Ergbnis (#NAME) gebracht.)
Oder habt ihr andere Vorschläge den Zeilenumbruch zu übernehmen?
Liebe Grüße
Leo
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nach SQL-Abfrage Zeilenumbruch ersetzen
19.04.2018 14:05:28
ChrisL
Hi Leo
.Formula im Gegensatz zu .FormulaLocal erfordert die englische Schreibweise. ZEICHEN() = CHAR()
cu
Chris
AW: Nach SQL-Abfrage Zeilenumbruch ersetzen
19.04.2018 23:17:22
Leo
Hallo Chris!
Problem gelöst!
Die kleinen, feinen Details machen's aus...
Herzlichen Dank!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zeilenumbrüche in Excel nach SQL-Abfrage korrekt ersetzen


Schritt-für-Schritt-Anleitung

  1. SQL-Abfrage anpassen: Stelle sicher, dass deine SQL-Abfrage korrekt ist. Um Zeilenumbrüche zu ersetzen, kannst du die Funktion REPLACE verwenden. Hier ein Beispiel:

    SELECT Artikel.ArtikelNr, Artikel.Bezeichnung, REPLACE(Artikel.Interner_Text4, CHAR(13), CHAR(10))
    FROM Artikel Artikel

    Dadurch werden alle CR-Zeilenumbrüche in LF-Zeilenumbrüche umgewandelt.

  2. Makro zur Anpassung der Formel erstellen: Wenn du die Daten in Excel hast, erstelle ein Makro, um die Zeilenumbrüche in der Zelle zu ersetzen. Hier ist ein Beispiel:

    Sub Makro1()
       Dim alteFormel As String
       Dim neueFormel As String
       alteFormel = Range("C2").Value
       neueFormel = "=""" & Replace(alteFormel, "CHAR(10)", """&CHAR(10)&""") & """"
       Range("C2").Formula = neueFormel
    End Sub
  3. Englische Schreibweise verwenden: Wenn du die .Formula-Eigenschaft verwendest, achte darauf, die englische Schreibweise zu verwenden. In diesem Fall bedeutet CHAR() das gleiche wie ZEICHEN() in der deutschen Version von Excel.

  4. Formel bestätigen: Nach dem Ausführen des Makros kann es notwendig sein, die Zelle erneut zu bearbeiten. Ein Doppelklick und anschließendes Bestätigen mit Enter kann helfen, die Formel korrekt anzuwenden.


Häufige Fehler und Lösungen

  • #NAME-Fehler: Dieser Fehler tritt häufig auf, wenn die Formel nicht korrekt interpretiert wird. Achte darauf, die richtige Schreibweise (englisch) zu verwenden. Verwende .FormulaLocal für lokale Excel-Versionen, wenn nötig.

  • Zeilenumbrüche nicht angezeigt: Wenn die Zeilenumbrüche nicht angezeigt werden, überprüfe, ob die Zeilenumbrüche korrekt in der SQL-Abfrage behandelt werden und ob in Excel die Zelle die richtigen Formateinstellungen hat.


Alternative Methoden

  • Verwendung der Funktion Text in Spalten: Eine einfache Methode, um Zeilenumbrüche zu entfernen oder durch ein anderes Zeichen zu ersetzen, ist die Funktion Text in Spalten in Excel. Wähle die Zellen aus und gehe zu Daten -> Text in Spalten, um die gewünschten Anpassungen vorzunehmen.

  • Suchen und Ersetzen: Du kannst auch die Funktion Suchen und Ersetzen in Excel verwenden, um Zeilenumbrüche durch andere Zeichen (z.B. Kommas) zu ersetzen. Drücke Strg + H, um das Dialogfeld zu öffnen, und gib die entsprechenden Zeichen ein.


Praktische Beispiele

  • Beispiel SQL-Abfrage:

    SELECT ArtikelNr, Bezeichnung, REPLACE(Beschreibung, CHAR(10), ', ') AS Beschreibung
    FROM Produkte

    Diese Abfrage entfernt Zeilenumbrüche aus der Beschreibung und ersetzt sie durch ein Komma.

  • Beispiel für Excel-Makro:

    Sub ErsetzeZeilenumbruch()
       Dim ws As Worksheet
       Set ws = ThisWorkbook.Sheets("Tabelle1")
       ws.Range("A1:A10").Replace What:=vbLf, Replacement:=", ", LookAt:=xlPart
    End Sub

Tipps für Profis

  • Verwende VBA für komplexe Datenbearbeitungen: Wenn du regelmäßig mit SQL-Daten arbeitest, kann es sich lohnen, komplexe Makros zu erstellen, um die Daten automatisch zu bereinigen.

  • Datenvalidierung: Überprüfe immer die SQL-Daten, um sicherzustellen, dass keine unerwarteten Zeilenumbrüche vorhanden sind, die das Layout deiner Excel-Datei stören könnten.


FAQ: Häufige Fragen

1. Warum wird der Zeilenumbruch nicht korrekt dargestellt? Es kann sein, dass die Zelle nicht im richtigen Format vorliegt oder dass die SQL-Abfrage die Zeilenumbrüche nicht korrekt ersetzt hat.

2. Wie kann ich alle Zeilenumbrüche aus einer Zelle entfernen? Du kannst die Suchen und Ersetzen-Funktion in Excel verwenden, um alle Zeilenumbrüche durch ein anderes Zeichen zu ersetzen. Verwende Strg + H, um das Dialogfeld zu öffnen und gib CHAR(10) als zu suchendes Zeichen ein.

3. Muss ich die SQL-Abfrage jedes Mal anpassen? Wenn du regelmäßig Daten aus derselben Quelle importierst, kannst du die SQL-Abfrage in deinem Skript oder deiner Anwendung speichern, um sie bei Bedarf automatisch auszuführen.

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