String über mehrere Zeilen in einen mit eine KONVERTIEREN

  • Excel

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von raist10.

    String über mehrere Zeilen in einen mit eine KONVERTIEREN

    Hallo, ich habe einen String in Excel innerhalb einer Zelle, der über mehrere Zeile geht.
    Ich benötigen diesen aber nur in einer Zeile. Manuell soll das nicht geschehen.
    kann ich mit VBA daraus einen einzeiligen string machen?

    der gegebene String:

    SQL-Abfrage

    1. SELECT Kundenverzeichnis.KundenName, Bestellungen.Portionen, Bestellungen.Bestelldatum, Bestellungen.Lieferdatum, Speisekarte.KategorieNr, Speisekarte.KategorieName
    2. FROM (Kundenverzeichnis INNER JOIN Bestellungen ON Kundenverzeichnis.KundenNr = Bestellungen.KundenNr) INNER JOIN Speisekarte ON Bestellungen.KategorieNr = Speisekarte.KategorieNr
    3. WHERE (((Kundenverzeichnis.KundenName) Like "C*" Or (Kundenverzeichnis.KundenName) Like "K*") AND ((Bestellungen.Portionen)<=20) AND ((Speisekarte.KategorieNr)="B"))
    4. ORDER BY Kundenverzeichnis.KundenName DESC;


    Mein derzeitger Code:

    Visual Basic-Quellcode

    1. Range("A16").Value = Replace(UCase(Range("A16").Value), " ", "")
    2. If Range("A16") = UCase("SELECTKundenverzeichnis.KundenName,Bestellungen.Portionen,Bestellungen.Bestelldatum,Bestellungen.Lieferdatum,Speisekarte.KategorieNr,Speisekarte.KategorieNameFROM(KundenverzeichnisINNERJOINBestellungenONKundenverzeichnis.KundenNr=Bestellungen.KundenNr)INNERJOINSpeisekarteONBestellungen.KategorieNr=Speisekarte.KategorieNrWHERE(((Kundenverzeichnis.KundenName)Like""C*""Or(Kundenverzeichnis.KundenName)Like""K*"")And((Bestellungen.Portionen)<=20)And((Speisekarte.KategorieNr)=""B""))ORDERBYKundenverzeichnis.KundenNameDESC;") Then
    3. Range("B11").Value = 1
    4. Else
    5. Range("B11").Value = 0
    6. End If


    Ich muss diesen String, den ein Benutzer eingeben muss bzw. mit der Entwurfsansicht in Access erstellt auf korrektheit überprüfen.
    Das ist mein Problem.

    Ich hoffe Ihr könnt mir helfen.
    Danke!
    Der String steht in einer Zelle in Excel, die aber mehrere Zeilen hoch ist (durch den formatiereten Zeilenumbruch)? Dann ist der String für VBA immer noch einzeilig.
    NB. Es ist doch schön, wenn man lesbare Namen vergibt. Siehe auch [VB.NET] Beispiele für guten und schlechten Code (Stil).

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „INOPIAE“ ()

    Mal gucken ob ich das richtig verstanden habe:

    du fügst in Excel einen String in EINE Zelle ein. Nach der Aktion hast Du aber eine ziemlich hohe Zelle da Excel den Zeilenumbruch eingeschaltet hat.

    Ist ja grundsätzlich kein Problem, da beim Auslesen Excel das wiederum als nur eine Zeile erkennt.

    Heisst das der Vergleich mit einem einzeiligen String den irgendjemand eingibt problemlos funktioniert.

    Oder verstehe ich gerade das Problem irgendwie nicht?

    Gruß

    Rainer