Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
612to616
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Wie Textdeformation beim Import verhindern?
17.05.2005 23:00:44
Volker
Ursprungsbeitrag ist
https://www.herber.de/index.html?https://www.herber.de/forum/archiv/608to612/t609240.htm
Erst mal vielen Dank an Volker - mit der Hoffnung, daß Du mir (bzw. natürlich gerne auch jemand anderes ;-) ...) noch etwas weiterhelfen kannst.
Der Lösungsansatz ist so gesehen schon mal nicht schlecht. Habe nur noch 2 kleine Probleme, wenn ich es so mache:
- Manche Texte (ich glaube, es handelt sich wieder um exakt die gleichen "Problemzellen") sind nun in Hochkommas eingeschlossen. Das an sich macht noch nichts - da sie wohl dann später im Shop einfach ignoriert werden. Problematisch ist jedoch, daß manche sich bereits ordnungsgemäß im Text befindlichen Hochkommas noch einmal in selbige gehüllt werden - was dann blöd aussieht.
- Die Sache mit dem Datumsformaten: Die Zellen mit dem Format xx.xx.xxxx bleiben OK, die anderen werden in Mon xx umgewandelt - was mir das Jahrhundert um damit eine wichtige Info eliminiert.
Was kann ich da machen? Bzw. gibt's evtl. doch noch ne Lösung über Excel?

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 05:14:25
Reinhard
Hallo Volker,
ich habe jetzt den ursprungslink nur überflogen.
kannste mal posten wie die ersten 10-30 Zeilen des Textfiles in einem Editor aussehen und wie sie nach dem Einlesen in Excel aussehen sollen?
Gruß
Reinhard
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 10:14:43
Volker
Hallo Reinhard,
Hier
https://www.herber.de/bbs/user/22514.txt
findest Du die TXT in ihrer ursprünglichen Form. Hauptproblem beim Import war ja der abgeschnittene Text ... und dann noch diese Datumsgeschichte. Das sind also die beiden Sachen, bei denen sich das Ergebnis nach dem Import dann von der "Editor-Form" unterscheidet ... was es aber nicht soll ;-)
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 12:04:06
Reinhard
Hallo Vlker,

Sub tt()
Open "d:\programme\windac\test.txt" For Input As #1
While Not EOF(1)
Line Input #1, satz
zei = zei + 1
Cells(zei, 1) = satz
Wend
End Sub

Gruß
Reinhard
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 11:04:29
MichaV
Hallo,
versuch mal, ob es so geht:


      
Private Sub CommandButton1_Click()
Dim zeile$
Dim werte$()
Dim d%, r%, c%
Dim Datei
Datei = Application.GetOpenFilename
If Datei = Falsch Then Exit Sub
d = FreeFile
Open Datei For Input As #d
While Not EOF(1)
  Line 
Input #d, zeile
  werte = Split(zeile, vbTab)
  r = r + 1
  
For c = 0 To UBound(werte)
    Cells(r, c + 1) = werte(c)
  
Next c
Wend
Close #d
End Sub 


Gruss- Micha
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 11:27:05
Volker
Ich denke mal, das soll ein Makro sein!? Also einfach in den Makro-Editor - und dann ausführen?
Nur wann? Wenn ich die Datei schon importiert habe? Dann ist sie aber ja doch schon "verstümmelt"!?
Bzw. was soll es bewirken?
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 12:36:17
MichaV
Hallo,

das Makro bewirkt folgendes: Du wählst die zu importierende Datei, und die wird dann beginnend in Zelle A1 importiert.
Bei mir taucht das Problem mit den verstümmelten Zeilen und Formaten(soweit ich das bei den Formaten erkennen kann) nicht auf.
Das Makro kannst Du folgendermaßen einbauen: Menü Extras- Makro- Aufzeichnen-
Makroname:z.B. "Import", Makro speichern in: Persönlicher Makroarbeitsmappe, evtl.
Tastenkombination festlegen, OK. Dann beendest Du die Aufzeichnung sofort wieder
(gleiches Menü, oder das kleine Stop- Symbol, das erscheinen sollte) Dann gehst Du mit
Alt+F11 in den VBA- Editor und siehst links unter Projekt:(Deine Arbeitsmappe) ein
Zweig, der "Module" heißt. Doppelcklick da rauf, und ein Code erscheint rechts, der mit
Sub Import() beginnt und mit End Sub endet. Zwischen diese Zeilen kopierst Du den obigen
Code, aber OHNE die 1. und letzte Zeile Private "Sub CommandButton1_Click() und End Sub".
Das wars. Das Makro kannst Du mit ALt+F8 ausführen.

Das Ganze sieht dann so aus, wie in der Beispielmappe. https://www.herber.de/bbs/user/22888.xls
Probier es vielleicht in der Beispielmappe aus, ob es für Dich okay ist.
Gruss- Micha
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 15:01:43
Volker
Hallo,
Vielen Dank erst mal für Euer aller Unterstützung :-)
OK ... das Makro von Micha läuft nun schon mal.
Habe zunächst etwas bearbeitet und gespeichert ... dann alles geschlossen ... und dann nen erneuten Import gemacht. Doch die Probleme sind nach wie vor da: Hochkommas schließen den Text mancher Zellen ein ... mehrere Hochkommas an den Stellen, an denen normalerweise zumindest eines steht ... und die Zellen, die das Datum enthalten, haben als Format "benutzerdefiniert" - wodurch das Datum im Format "Monat xx" dann wieder so umgewandelt wird, wie ich's natürlich nicht haben will :-(
Noch eine Idee, wie man das "verfeinern" kann?
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 15:24:10
MichaV
Hi,
sorry, kann ich erstmal nicht nachvollziehen. Wenn in Deiner Import- Datei keine Hochkommas stehen, werden auch keine importiert. Hast Du eine "neue" Datei genommen? (also so, wie sie bei Dir normalerweise auftauchen, ohne Manipulationen Deinerseits)
Das Format wird bei mir durch den Import nicht verändert, es bleibt so, wie es vorher war. Wenn es Standart ist, aber ein Datum importiert wurde, dann wird das Datum erst umgewandelt, wenn Du die Zelle aktivierst und dann wieder verlässt. Ist doof, kann man aber ändern.
Vielleicht reden wir auch aneinander vorbei.
Was meinst Du genau mit "Habe zunächst etwas bearbeitet und gespeichert ... dann alles geschlossen ... und dann nen erneuten Import gemacht"?
Den erneuten Import in einer neuen Datei (wozu dannn das Bearbeiten?) oder in der vorher geschlossenen Datei (wozu dann neuer Import?)
Gruss- Micha
PS: Wir kriegen das hin!
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 16:49:07
Volker
Ich habe folgendes gemacht:
Zuerst habe ich die TXT mittels des Makros importiert.
Dann hab ich die Texte, die in Hochkommas eingeschlossen waren, von diesen befreit. Ebenso habe ich von Begriffen, die im Text in Hochkommas stehen sollen, bearbeitet - da diese nämlich von zwei oder drei Hochkommas eingeschlossen waren. Ferner habe ich überall da, wo das Datum verstümmelt war, das Format der Zelle von benutzerdefiniert auf Text geändert - und das Datum noch einmal richtig eingetippt.
Als die Texte dann also bereinigt waren (also in der Form vorlagen, wie ich sie dann auch in meinem Shop haben will), habe ich die Datei als Tab-getrenntes TXT wieder gespeichert - und Excel geschlossen.
Danach habe ich die TXT in meinen Shop hochgeladen. Lief einwandfrei - was heissen soll: Die Texte sind so erschienen, wie ich sie bearbeitet hatte. Gespeichert wurde also alles richtig.
Dann habe ich die TXT mittels des Makros erneut in Excel importiert. Und da war es dann bzgl. Hochkommas und Datum wieder alles so, wie es nicht sein soll ... :-(
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 19:55:26
MichaV
Hi,
das konnte ich nachvollziehen. Bei mir werden- entgegen Deiner Vermutung- die Daten schon beim Speichern als Tab-getrennte Textdatei verändert. Warum Du das in Deinem Shop nicht siehst, weiß ich nicht.
Das Verändern beim Speichern kannst Du so verhindern:


      
Private Sub Export()
'Exportiert das aktive Blatt als Tab- getrennte Textdatei.
'Funzt auch bei Zellinhalten mit mehr als 255 Zeichen.
Dim Zeilen
Dim Spalten
Dim Werte$()
Dim d%, r%, c%
Dim Datei
Datei = Application.GetSaveAsFilename(Title:="Datei exportieren- Dateinamen wählen!")
If Datei = Falsch Then Exit Sub
Zeilen = ActiveSheet.UsedRange.Rows.Count
Spalten = ActiveSheet.UsedRange.Columns.Count
ReDim Werte(0 To Spalten - 1)
d = FreeFile
Open Datei For Output As #d
  
For r = 1 To Zeilen
    
For c = 1 To Spalten
      Werte(c - 1) = ""
      Werte(c - 1) = Cells(r, c)
    
Next
    
Print #d, Join(Werte, vbTab)
  
Next r
Close #d
End Sub 


Ich habe es mit dem vorigen Makro wieder eingelesen und alles geht gut. Auch das Datum bleibt unverändert, solange man nicht in die Zelle zum Bearbeiten geht.
Schlage vor, Du versuchst die Erstellung der Textdatei mit diesem Code, und dann sehen wir weiter.
Gruß- Micha
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 20:30:07
Volker
Hi,
Wie sich zeigt, ist das Schwierigste am Problem immer die Beschreibung ... ;-)
OK - habe das Export-Makro auch eingefügt. Läuft soweit auch schon mal ... so daß ich jetzt folgenden Teilerfolg als Ergebnis habe:
Die Hochkomma-Sache ist anscheinend aus der Welt geschafft. Zumindest ist es bei den zwei Versuchen, die ich jetzt gemacht hatte, zufriedenstellend so geblieben, wie ich es haben will.
Kummer macht mir allerdings nach wie vor noch das Datum. Hier überlege ich nun, in welchem Format ich die Zellen nun am besten formatiere. Wobei es derzeit noch egal ist: Unabhängig, ob ich die Zelle als Standard oder als Text formatiere ... nach dem Speichern, Schließen und anschließendem Reopen ist das Datum wieder verstümmelt :-(
Nun frage ich mich auch schon, ob das evtl. auch irgendwie an irgendwelchen Standard-Excel-Einstellungen liegen kann - die diesen AutoFormat verursachen ...!?
Anzeige
AW: Wie Textdeformation beim Import verhindern?
18.05.2005 21:48:13
MichaV
Hallo
na fein. Wenn Du im Import- Makro eine Zeile einfügst:

For c = 0 To UBound(Werte)
If IsDate(Werte(c)) Then Cells(r, c + 1).NumberFormat = "@" 'diese Zeile einfügen
Cells(r, c + 1) = Werte(c)
Next c

dann werden die Zellen, in die ein Datums- Wert geschrieben werden soll, vorher als Text formatiert. Umwandlungen sind damit praktisch ausgeschlossen.
Gruß- Micha
PS: Falls das nicht hilft, hab ich heute keine Idee mehr ;o)
Endlich ...
18.05.2005 23:03:09
Volker
Hi,
Good news! Es scheint zu funktionieren!
Zumindest hat es das schon mal mit den ersten Datensätzen ... werde jetzt mal nach und nach die ganze Datei bearbeiten - aber ich bin sehr optimistisch ;-)
Dir auf jeden Fall ein ganz großes Dankeschön ... Du hast mir wirklich sehr geholfen :-)
Anzeige
AW: Endlich ...
19.05.2005 21:43:48
MichaV
Na fein! War mir ein Vergnügen ;o)

134 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige