Re: ab bestimmte Zeichen zahl auslesen
Am 18.07.2018 um 08:18 schrieb openoff...@skerra.net: > Hallo Jörg, > > Du hast recht die CSV Datei ist unmöglich. > In unserer Inventarliste im Intranet kann ich eine Inventarliste als csv > Datei exportieren. > Die sieht nicht gut aus und hat z.B = vor den ersten Wert. > Warum weiß ich nicht. Daran kann ich nichts ändern, da dieses von einen > Rechenzentrum kommt. > Ich habe natürlich versucht die CSV Datei mit oo zu öffnen, aber wegen > den verschiedenen Zeichen (wie von die erwänt) bin ich bei allen > Formatierungsversuchen gescheitert. > So bleib mir meiner Meinung nach nur der Weg, Werte zwischen den > Anführungszeichen auszulesen. Entweder bearbeitest du die Datei vorher, wie anderweits bereits beschreiben, oder du gehst folgendermaßen vor: 1) Öffne die CSV mit Calc, aber setze beim Textimport: - Trenner: [X] Tabulator (*nicht* Komma o. ä.!) - Klick ganz unten in der Vorschau auf die Spaltenüberschrift, und wähl dann im Dropdownfeld darüber "Text" aus Dadurch bekommst du zumindest mal den ganzen Kladderadatsch in jeweils eine Zelle (allerdings sind da schon einige Hochkomma eliminiert). 2) Dann öffnest du (ohne dieses erste Dokument zu schließen!) eine normale Calc-Datei; in Zelle A1 schreibst du ein "=", klickst dich dann in dem anderen Datei auf Zelle A1 durch, und drückst die ENTER-Taste; dmit sollte in der urnsprünglichen Zelle irgend was der Art "='file:///C:/csv'#$Tabelle1.A1" o, ä, stehen. Die folgenden Spalten füllst du dann folgendermaßen: - In Spalte B schreibst du den Wert 1 - in Zelle C1 schreibst du die Formel '=FINDEN(;$A1;B1+1)' (ohne die einfachen Hochkomma) - diese Zelle kopierst du dann in die Spalten D, E, F, usw., soweit du sie benötigst Diese komplette Zeile kopierst du dann so viele Spalten nach unten, wie notwendig ist. Dann kannst du mit Formeln der Art | =TEIL($A1;B1+1;C1-B1-1) usw. die gewünschten Teilabschnitte heraus kopieren. Am besten (man Übersicht) wechselst du dafür auf ein neues Tabellenblatt. 3) Dann arbeitest du *nur* *noch* mit dieser Calc-Datei bzw. diesem Tabellenblatt. Beim Öffnen derselben wirst du dann jedes mal gefragt werden, ob du die Verknüpfungen aktualisieren willst, und wenn du das bestätigst, wird die betreffende CSV automatisch im Hintergrund geöffnet und eingelesen. Du brauchst dich also nicht darum zu kümmern (außer natürlich, dass eine entsprechende Datei immer unter dem selben Namen am selben Ort vorhanden sein muss). Sprich die CSV muss nicht(!) geöffnet werden. Allerdings kann das Aktualisieren je nach Datenmenge durchaus einige Sekunden oder mehr benötigen; also nicht ungeduldig werden (und u. U. vielleicht erst mal mit der zusammengestutzten Version 'üben'). Der Umweg über eine zweite Datei ist leider aufgrund der kaputten Datenstruktur der Quelle erforderlich, anders bekommt man das Problem nicht vernünftig in den Griff. Zumindest nicht, wenn man davon ausgehen muss, dass die Rohdaten von Zeit zu Zeit ersetzt werden, d. h. die Datei überschrieben werden wird. :-(( Wolfgang -- Durch Donald Trump ist mir endgültig klar geworden: Es ist nicht der Turm von Pisa, der schief steht, es ist die Welt! - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org
Re: ab bestimmte Zeichen zahl auslesen
Am 17.07.2018 um 20:35 schrieb openoff...@skerra.net: > Hallo > > Ich habe eine CSV Datei und möchte bestimmte Zeichenketten auslesen. > > "="12594087"","="3ClKDJG4M9"","Monitor","HP E.Displ > 22Zoll","Ar-PC","","0","","München","" Das ist aber kein standardkonformes Format für eine CSV-Datei. *So* wirst du als z. B. ersten Wert folgende Zeichenfolge bekommen: | =12594087"" Was aber eine kaputte Formel darstellt, denn '12594087""' ist weder ein String (dazu fehlen die umschließenden Hochkomma) noch eine Zahl (was bitte soll denn Hochkomma für eine Ziffer sein?). Wenn das wirklich eine CSV /wäre/, müssten alle Hochkomma /innerhalb/ eines Textstrings /verdoppelt/ sein, also | "=""12594087""","=""3ClKDJG4M9""","Monitor", ... ^^^^^^ ^^ Aber '="12594087"' als Inhalt einer Zelle ist ungefähr [tm] genau das gleiche wie '12594087'. Eine Formel, die nur einen Konstantwert zuweist, macht grundsätzlich nur selten einen Sinn. Ok, immerhin würde in dem Fall der Wert "12594087" als String interpretiert werden, nicht als Zahl (sollte das überhaupt gewünscht sein); aber das könnte man auch (bzw. besser) durch ein simples | '12345 o. ä. erreichen. > In der ersten Zelle soll der Wert zwischen den zweiten und dritten > Anfürungszeichen angezeit werden. > In der zweiten Zelle soll der Wert zwischen den sechsten und siebten > Anfürungszeichen angezeit werden. > .. usw. Am einfachsten öffnest du die Datei vorher mit einem externen Editor (z. B. dem Notepad.exe), löschst dort alle Vorkommen der Zeichenfolge '"="' ersatzlos (Suchen und Ersetzen durch nichts), und speicherst diese Datei unter anderem Namen ab. /Dann/ kannst du /diese/ CSV mit Calc öffnen, und hast auch sofort die Werte wie gewünscht. > Ich habe kein Formel dafür gefunden. Die Zeichenketten die ausgegeben > werden sind immer unterschiedlich lang. Sorry, ich fürchte, *so* kaputt wird das *überhaupt* nicht vernünftig einzulesen sein. Wolf 'bzw. nur mit so viel Aufwand, dass es sich gewiss nicht lohnt' gang -- Dank Donald Trump ist mir endgültig klar geworden: Es ist nicht der Turm von Pisa, der schief steht, es ist die Welt! - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org
RE: ab bestimmte Zeichen zahl auslesen
Hallo Siegfried, > From: openoff...@skerra.net [mailto:openoff...@skerra.net] > Sent: Wednesday, July 18, 2018 8:19 AM > To: users-de@openoffice.apache.org > Subject: Re: ab bestimmte Zeichen zahl auslesen > > Hallo Jörg, > > Du hast recht die CSV Datei ist unmöglich. > In unserer Inventarliste im Intranet kann ich eine > Inventarliste als csv > Datei exportieren. > Die sieht nicht gut aus und hat z.B = vor den ersten Wert. > Warum weiß ich nicht. Daran kann ich nichts ändern, da dieses > von einen > Rechenzentrum kommt. > Ich habe natürlich versucht die CSV Datei mit oo zu öffnen, > aber wegen > den verschiedenen Zeichen (wie von die erwänt) bin ich bei allen > Formatierungsversuchen gescheitert. > So bleib mir meiner Meinung nach nur der Weg, Werte zwischen den > Anführungszeichen auszulesen. mmh ... ich habe, mit Deinen Werten, eine Testdatei erstellt und damit getestet bevor ich geantwortet hatte. Augenscheinlich weil die Struktur Deiner Werte keine cvs-Struktur ist verhält sich Calc beim Öffnen etwas komisch (was ich der Übersichtlichkeit halber bei meiner Antwort verschwiegen hatte), A B E R: die Datei ist in jedem Falle zu öffnen das Du an die Werte kommst. M;eine cvs-Testdatei enthält nur die eine Zeile: "="12594087"","="3ClKDJG4M9"","Monitor","HP E.Displ 22Zoll","Ar-PC","","0","","München","" wenn ich diese in Calc öffne als txt/csv mit folgenden Filtereinstellungen: Trennoptionen-Getrennt Andere--> " Texttrenner --> leer lassen (d.h. markiere das dort sichtbarte Zeichen und drücke Taste ENTF) erhalte ich (die "|" symbolisieren hier die 'Zellgrenzen'): |=|12594087||0|=|3ClKDJG4M9||0|Monitor|0|HP E.Displ 22Zoll|0|Ar-PC|0||0|0|0||0|München|0 habe also, die von Dir gewünschten Werte (so wie ich es verstehe), jeweils in separaten Zellen. Um darüber hinaus, und ganz unabhängig von OO, die csv-Datei zu bereinigen, würde ich sie in einen gewöhnlichen Editor laden und alle " und = ersetzen durch nichts, dadurch liegt dann eine ganz normale csv-Datei (ohne Textrenner) vor. Gruß Jörg - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org
Re: ab bestimmte Zeichen zahl auslesen
Hallo Jörg, Du hast recht die CSV Datei ist unmöglich. In unserer Inventarliste im Intranet kann ich eine Inventarliste als csv Datei exportieren. Die sieht nicht gut aus und hat z.B = vor den ersten Wert. Warum weiß ich nicht. Daran kann ich nichts ändern, da dieses von einen Rechenzentrum kommt. Ich habe natürlich versucht die CSV Datei mit oo zu öffnen, aber wegen den verschiedenen Zeichen (wie von die erwänt) bin ich bei allen Formatierungsversuchen gescheitert. So bleib mir meiner Meinung nach nur der Weg, Werte zwischen den Anführungszeichen auszulesen. Grüße Siegfried Am 2018-07-18 07:19, schrieb Jörg Schmidt: -Original Message- From: openoff...@skerra.net [mailto:openoff...@skerra.net] Sent: Tuesday, July 17, 2018 8:35 PM To: users-de@openoffice.apache.org Subject: ab bestimmte Zeichen zahl auslesen Hallo Ich habe eine CSV Datei und möchte bestimmte Zeichenketten auslesen. "="12594087"","="3ClKDJG4M9"","Monitor","HP E.Displ 22Zoll","Ar-PC","","0","","München","" In der ersten Zelle soll der Wert zwischen den zweiten und dritten Anfürungszeichen angezeit werden. In der zweiten Zelle soll der Wert zwischen den sechsten und siebten Anfürungszeichen angezeit werden. .. usw. Ich habe kein Formel dafür gefunden. Die Zeichenketten die ausgegeben werden sind immer unterschiedlich lang. Hat einer eine Idee. Ich verstehe überhaupt nicht die Frage nach einer Formel verbunden mit dem Hinweis auf "Zelle" und dem Hinweis "usw.". Wenn Du tatsächlich das tun willst was Du schreibst, dann öffne die csv-Datei in Calc und gib das Anführungszeichen als Feldtrenner an und Du hast die Inhalte in Zellen, wie gewünscht. Gleichzeitig weiß ich aber nicht was Deine Datei für eine csv-Datei sein soll, wenn der Feldtrenner das Anführungszeichen wäre, denn das wäre völlig ungewöhnlich und mir ist ohnehin nicht der Aufbau Deiner Datei einleuchtend, denn das hier: "="12594087"","="3ClKDJG4M9"","Monitor"," soll doch wohl offensichtlich 3 Werte wiedergeben, nämlich (bei Komma ist Feldtrenner): 12594087 3ClKDJG4M9 Monitor und nicht etwa 10 Werte (bei Anführungszeichen ist Feldtrenner): = 12594087 , = 3ClKDJG4M9 , Monitor , hinzukommt das selbst bei Komma als Feldtrenner (plus Anführungszeich als Texttrenner) die Werte ja eigentlich wären: =12594087 =3ClKDJG4M9 Monitor bzw. Calc es sogar interpretiert als: =12594087"" =3ClKDJG4M9"" Monitor was alles wenig Sinn ergibt. Kurzum, normalerweise sollte eine Zeile einer entsprechenden csv-Datei wohl so aussehen: "12594087","3ClKDJG4M9","Monitor","HP E.Displ 22Zoll","Ar-PC","","0","","München","" Gruß Jörg - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org
RE: ab bestimmte Zeichen zahl auslesen
> -Original Message- > From: openoff...@skerra.net [mailto:openoff...@skerra.net] > Sent: Tuesday, July 17, 2018 8:35 PM > To: users-de@openoffice.apache.org > Subject: ab bestimmte Zeichen zahl auslesen > > Hallo > > Ich habe eine CSV Datei und möchte bestimmte Zeichenketten auslesen. > > "="12594087"","="3ClKDJG4M9"","Monitor","HP E.Displ > 22Zoll","Ar-PC","","0","","München","" > In der ersten Zelle soll der Wert zwischen den zweiten und dritten > Anfürungszeichen angezeit werden. > In der zweiten Zelle soll der Wert zwischen den sechsten und siebten > Anfürungszeichen angezeit werden. > .. usw. > > Ich habe kein Formel dafür gefunden. Die Zeichenketten die ausgegeben > werden sind immer unterschiedlich lang. > > Hat einer eine Idee. Ich verstehe überhaupt nicht die Frage nach einer Formel verbunden mit dem Hinweis auf "Zelle" und dem Hinweis "usw.". Wenn Du tatsächlich das tun willst was Du schreibst, dann öffne die csv-Datei in Calc und gib das Anführungszeichen als Feldtrenner an und Du hast die Inhalte in Zellen, wie gewünscht. Gleichzeitig weiß ich aber nicht was Deine Datei für eine csv-Datei sein soll, wenn der Feldtrenner das Anführungszeichen wäre, denn das wäre völlig ungewöhnlich und mir ist ohnehin nicht der Aufbau Deiner Datei einleuchtend, denn das hier: "="12594087"","="3ClKDJG4M9"","Monitor"," soll doch wohl offensichtlich 3 Werte wiedergeben, nämlich (bei Komma ist Feldtrenner): 12594087 3ClKDJG4M9 Monitor und nicht etwa 10 Werte (bei Anführungszeichen ist Feldtrenner): = 12594087 , = 3ClKDJG4M9 , Monitor , hinzukommt das selbst bei Komma als Feldtrenner (plus Anführungszeich als Texttrenner) die Werte ja eigentlich wären: =12594087 =3ClKDJG4M9 Monitor bzw. Calc es sogar interpretiert als: =12594087"" =3ClKDJG4M9"" Monitor was alles wenig Sinn ergibt. Kurzum, normalerweise sollte eine Zeile einer entsprechenden csv-Datei wohl so aussehen: "12594087","3ClKDJG4M9","Monitor","HP E.Displ 22Zoll","Ar-PC","","0","","München","" Gruß Jörg - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org
ab bestimmte Zeichen zahl auslesen
Hallo Ich habe eine CSV Datei und möchte bestimmte Zeichenketten auslesen. "="12594087"","="3ClKDJG4M9"","Monitor","HP E.Displ 22Zoll","Ar-PC","","0","","München","" In der ersten Zelle soll der Wert zwischen den zweiten und dritten Anfürungszeichen angezeit werden. In der zweiten Zelle soll der Wert zwischen den sechsten und siebten Anfürungszeichen angezeit werden. .. usw. Ich habe kein Formel dafür gefunden. Die Zeichenketten die ausgegeben werden sind immer unterschiedlich lang. Hat einer eine Idee. Grüße Siegfried - To unsubscribe, e-mail: users-de-unsubscr...@openoffice.apache.org For additional commands, e-mail: users-de-h...@openoffice.apache.org