Seite 1 von 1

Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 07.04.2020 22:05
von HemSA
Hallole,
Wenn ich String1 oder String2 kopiere kann ich es in Excel einfügen und jeder Wert wird in einer separaten Spalte angezeigt.

Wenn ich allerdings dieses mache:
String = String1 + " " + String2
Dann wird der letzte Teil von String1 und der erste Teil von String2 in Excel in der selben Spalte gezeigt.

Wie kann ich es machen das auch nach dem Zusammenfügen von String1 und String2 = String der letzte Teil von String1 und der erste Teil von String2 in Excel getrennt dargestellt wird?

Danke

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 07.04.2020 22:29
von helpy

Code: Alles auswählen

String = String1 + #TAB$ + String2

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 07.04.2020 22:42
von HemSA
helpy hat geschrieben:

Code: Alles auswählen

String = String1 + #TAB$ + String2
Danke helpy hat funktioniert. Könnte man vielleicht auch noch dokumentieren, habe jedenfalls nichts gefunden.

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 08.04.2020 00:15
von mk-soft
Schon mal was von Excel in eine Text-Dabei kopiert?

Sorry,
Hat nichts mit der Doku von PB zu tun...

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 08.04.2020 00:16
von Nino
HemSA hat geschrieben:Danke helpy hat funktioniert. Könnte man vielleicht auch noch dokumentieren, habe jedenfalls nichts gefunden.
Da musst du dich an die Autoren der Excel-Dokumentation wenden.

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 08.04.2020 22:35
von helpy
Um tabellarische Daten aus PureBasic nach Excel zu bekommen, besonders wenn es sich um größere Datenmengen handelt, wäre es sinnvoller gleich eine CSV-Datei zu erzeugen und diese dann in Excel zu importieren oder direkt zu öffnen. Den Weg über die Zwischenablage würde ich da nicht gehen!

==> CSV-Format

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 09.04.2020 01:04
von mk-soft
ODBC geht auch...

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 09.04.2020 12:04
von HeX0R
ODBC hat aber eine fiese max. Textlängenbegrenzung!
Das hat mich mal Stunden meines Lebens gekostet, bevor ich endlich wusste, wieso manche Texte nur zur Hälfte übertragen wurden.

In "normalen" Excel-Sheets kein Problem, aber ich arbeite öfter mit so durchgeknallten R&D Excel-Sheets, und die pappen da schon mal gerne eine riesige Anzahl Zeichen in so ne Zelle.

Bin mir nicht mehr sicher, aber ich glaube 260 Zeichen war das Limit.

Ich bin dann über Zip-Handling-Umweg damals gegangen (also xlsx direkt verarbeiten).

Re: Zusammenfügen von 2 String mit TAB oder so?

Verfasst: 09.04.2020 13:40
von kernadec
Hallo
Hier ist eine Lösung
Beim Importieren mit Excel [Daten] [aus Text] [UTF8] bleibt die Formatierung der Spalten erhalten
Libre Office guter Import csv
herzlich

Code: Alles auswählen

; ###################### Code-Formatierungsfelder für CSV-Dateien - by Kernadec ######
; ###################### Im Excel-Menü importieren [Daten] [Textdatei] [UTF] etc .. ##########


#col1 = 12
#col2 = 5
#col3 = 8
#col4 = 2
#col5 = 10

Dim a$(10)
Dim c$(10)

a$(1) = "Birne"          : c$(1) = "3,00"
a$(2) = "Apfel"          : c$(2) = "2,60"
a$(3) = "Mandarine"      : c$(3) = "2,90"
a$(4) = "Kiwi"           : c$(4) = "5,00"
a$(5) = "Traube"         : c$(5) = "6,00"
a$(6) = "Pommelos"       : c$(6) = "3,00"


b$ = "Preis"
d$ = "E"
e$ = "das Kilo"

Path$ = GetCurrentDirectory()

File$ = "Datei csv mit vorformatierten Spalten.csv"

ClearClipboard()

If CreateFile(0, Path$ + File$,#PB_Unicode)
  
  For i = 1 To 6
    
    text$ = a$(i) + Space(#col1 - Len(a$(i))) + "," + b$ + Space(#col2 - Len(b$)) + "," + Space(#col3 - Len(c$(i))) + c$(i) + "," + d$ + Space(#col4 - Len(d$))  + "," + e$ + Space(#col5 - Len(e$))
    WriteStringN(0,text$, #PB_Unicode) 
    
    SetClipboardText(GetClipboardText() + text$ + Chr(13)) ; Kopieren Sie Felder in die Zwischenablage
    
  Next i
  CloseFile(0) 
Else
  MessageRequester("Information "," Unbekannte Datei? ")
EndIf
End

Änderung der Windows-Registrierung
[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Excel\Options]
Klicken Sie mit der rechten Maustaste auf die rechte Seite und gehen Sie zu Neu> DWORD
Benennen Sie das Element DefaultCPG und speichern Sie es
Klicken Sie mit der rechten Maustaste auf DefaultCPG und wählen Sie Ändern
Setzen Sie die Basis auf Dezimal
Geben Sie den Code ein, der im Excel-Assistenten angezeigt wird (für UTF-8 ist es 65001).
OK klicken.

Modus jetzt: ANSI Windows standardmäßig
Kompatibler Text Durch Excel CSV begrenzte Spalten