Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

OpenText-Methode

Forumthread: OpenText-Methode

OpenText-Methode
07.08.2006 16:24:04
Thomas
Hallo miteinander,
ich will mir eine Datei über einen Button in Excel einlesen. Ich bin soweit das die entsprechende Datei auch eingelesen wird. Mit der OpenText-Methode kann man ja nun einiges an Parametern angeben. Dabei will ich die eingelesenen Daten einem Zahlenformat zuweisen- Zahl mit 2 Dezimalstellen. Ich denke das man das mit TextVisualLayout macht, dazu finde ich aber keine genauere Beschreibung. Oder wird da nur Schriftart-größe etc. definiert.
DANKE!
Viele Grüße
Thomas
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: OpenText-Methode
07.08.2006 18:38:27
Erich
Hallo Thomas,
schau dir mal
http://support.microsoft.com/?scid=kb;de;817358&spid=1743&sid=108
an. Da findest du, dass es den Parameter TextVisualLayout für die Bearbeitung von Texten in einer Sprache gibt,
in der Texte von rechts nach links gelesen werden (z. B. Hebräisch).
Funktioniert dafür aber wohl auch nicht.
Also: Den Parameter solltest du vergessen.
Die Formatierung (2 Nachkommastellen) kannst du NACH dem OpenText vornehmen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: OpenText-Methode
07.08.2006 19:03:03
Thomas
Das ist richtig, hab das gleiche wie du über den Parameter gefunden. er definiert ob von links nach rechts oder umgekehrt.
Mein Problem hab ich immer noch, das wäre: wenn ich mir die Daten einlese werden manche als Datum angenommen (nach dem Chaosprinzip), wer weiß warum, ich weiß es jedenfalls nicht. Jetzt wollte ich das folgendermaßen umgehen--&gt Beim schreiben der Daten einfach eine Formatierung in Zahl mit 2 Dezimalstellen mitgeben und das weiß ich nicht wie das geht?
Danke
Viele Grüße TL
Anzeige
AW: OpenText-Methode
07.08.2006 20:11:07
Erich
Hallo Thomas,
die Textdatei anders formatiert zu schreiben, wird nicht viel helfen.
Besser ist es, die Spalten, in denen die Umwandlung in Datum stört, zunächst als Text einzulesen.
Danach bekommt die Spalte ein Zahlformat und die die Texte werden in Zahlen umgewandelt.
Wenn Deine Textdatei den Dezimalpunkt (statt -komma) enthält, ginge das z. B. so:
Sub OpenTxt()
Workbooks.OpenText Filename:="XYZ.txt", Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=True, _
Space:=False, Other:=False, FieldInfo:=Array(Array(1, 2), Array(2, 2)), _
TrailingMinusNumbers:=True
With Columns(2)
.NumberFormat = "0.00"
.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
.Value = .Value
End With
End Sub
Hier ist die Umwandlung für die 2. Spalte (B) gemacht.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: OpenText-Methode
08.08.2006 15:03:35
Thomas
Hab es jetzt folgender maßen gelöst:

Private Sub Dateiauswählen_Click()
Dim Daten As Range
MsgBox ("Datei wählen")
Test = Application.GetOpenFilename(MultiSelect:=True) 'öffnet Fenster zum auswählen einer Datei (mehrfach Auswahl)
Set Daten = Workbooks("Mappe1").Worksheets(4).Range("A4:H8774") 'Zielbereich definieren
If IsArray(Test) Then
Workbooks.OpenText Test(1), origin:=xlWindows, DecimalSeparator:="."
MsgBox "Das aktive Arbeitsblatt ist " & ActiveWorkbook.Name
ActiveWorkbook.Worksheets(1).Columns("D:G").Replace What:=".", Replacement:=",", _
SearchOrder:=xlByColumns, MatchCase:=True
Debug.Print "Das aktive Arbeitsblatt ist " & ActiveWorkbook.Name
ActiveWorkbook.Worksheets(1).Range("A1:H8760").Copy Daten
ActiveWorkbook.Close
Else
MsgBox ("Keine Datei gewählt")
End If
End Sub

Danke für Deine Hilfe
Viele Grüße TL
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige