Ich versuche, über meine Anwendung (VS2010) in Excel den Text in einer Spalte zu teilen! Habe das mittels Makro aufgezeichnet, wo folgendes raus kommt: Selection.TextToColumns(Destination:=Range("M1"), DataType:="xlDelimited", _ TextQualifier:="xlDoubleQuote", ConsecutiveDelimiter:=False, TAB:=False, _ Semicolon:=False, Comma:=True, Space:=False, Other:=True, OtherChar:= _ "T", TrailingMinusNumbers:=True)
Ich schaffe es einfach nicht, dies in VB-Code umzuwandeln, er schreib immer einen Fehler wenn er zur o.a. Anweisung kommt.
Ich habe es auch schon mit Objektzuweisungen versucht und die Werte (z.B. Destination:= od. TextQualifier:="xlDoubleQuote" von den Objekten abzuleiten.
Hier der Teil des Codes der geht: xls_App = New Excel.Application xls_App.Visible = True xls_Mappe = xls_App.Workbooks.Add xls_Blatt = xls_Mappe.Worksheets(1) xls_Zelle = xls_Blatt.Range("A1") xls_Blatt.PasteSpecial(Windows.Forms.DataFormats.Text) xls_Blatt.Select() xls_App.Selection.NumberFormat = "0"
'Datum-Zeitspalte formatieren If DatumZeit = True Then xls_Blatt.Columns("N:N").Select() xls_App.Cells("1", "O").EntireColumn.Insert() xls_Blatt.Range("N1").Select() xls_App.ActiveCell.FormulaR1C1 = "Zeit" xls_Blatt.Range("M1").Select() xls_App.ActiveCell.FormulaR1C1 = "Datum" xls_Blatt.Columns("M:M").Select() Jetzt sollte die o.a. Anweisung "Text in Spalten" kommen, aber das brin ich nicht hin!
Hallo Ich habe das hier mal versucht: xls_App.Selection.TextToColumns(Destination:=xls_Blatt.Range("M1"), DataType:="xlDelimited", _ TextQualifier:="xlDoubleQuote", ConsecutiveDelimiter:=False, TAB:=False, _ Semicolon:=False, Comma:=True, Space:=False, Other:=True, OtherChar:= _ "T", TrailingMinusNumbers:=True) Kommt aber der Fehler, dass das TextToColumns nicht ausgeführt werden kann! Wenn ich Range, Destination und Datatype weg nehme dann zeigt er keinen Fehler macht aber in Excel auch nichts!!
Sorry, das alles muss ich weg nehmen Destination:=xls_Blatt.Range("M1"), DataType:="xlDelimited", _ TextQualifier:="xlDoubleQuote", ConsecutiveDelimiter:=False Das es keine Fehlermeldung gibt, aber in Excel passiert auch nichts, also das "Text in Spalten" wird nicht ausgeführt!!
Hier mal der gesamte Code, dabei sieht man auch den auskommentierten Coede, so habe ich es auch schon versucht, geht aber auch nicht:
Dim dtMem As New DataTable Dim xls_App As New Excel.Application Dim xls_Mappe As Excel.Workbook Dim xls_Blatt As Excel.Worksheet Dim xls_Zelle As Excel.Range
Ich habe mich auch mal auf MSDN umgeschaut, was es zum Thema so gibt (MSDN-Suche).
Dort habe ich einen Knowledgebase-Artikel gefunden (KB214261), der mich stutzig gemacht hat. Wenn du die Daten aus dem DataGridview in die Spalte "A1" des Excel-Sheet einfügst solltest du die Methode TextToColumns auch auf die Range "A:A" ausführen.
Ich habe das hier mal versucht:
xls_App.Selection.TextToColumns(Destination:=xls_Blatt.Range("M1"), DataType:="xlDelimited", _
TextQualifier:="xlDoubleQuote", ConsecutiveDelimiter:=False, TAB:=False, _
Semicolon:=False, Comma:=True, Space:=False, Other:=True, OtherChar:= _
"T", TrailingMinusNumbers:=True)
Kommt aber der Fehler, dass das TextToColumns nicht ausgeführt werden kann!
Wenn ich Range, Destination und Datatype weg nehme dann zeigt er keinen Fehler macht aber in Excel auch nichts!!
LG