Excel-Makro Text in Spalten
Möchte ich schreiben "makro" für meine .csv-Dateien. Ich brauchen, um zunächst auf den Daten "text" Spalten", aber wenn ich versuchte, makro aufzeichnen, bekomme ich eine Fehlermeldung:
"zu viele line-Fortsetzung".
Wähle ich collumn Ein und drückte dann auf "text in Spalten".
Code des Makros:
Sub Macro2()
'
' Macro2 Macro
'
' Keyboard Shortcut: Ctrl+e
'
Selection.TextToColumns Destination := Range("A1"), DataType := xlDelimited, _
TextQualifier := xlDoubleQuote, ConsecutiveDelimiter := FALSE, Tab := FALSE, _
Semicolon := FALSE, Comma := TRUE, Space := FALSE, Other := FALSE, FieldInfo _
:= Array(Array(1,1),Array(2,1),Array(3,1),Array(4,1),Array(5,1),Array(6,1), _
Array(7,1),Array(8,1),Array(9,1),Array(10,1),Array(11,1),Array(12,1),Array(13,1 _
),Array(14,1),Array(15,1),Array(16,1),Array(17,1),Array(18,1),Array(19,1),Array _
(20,1),Array(21,1),Array(22,1),Array(23,1),Array(24,1),Array(25,1),Array(26,1), _
Array(27,1),Array(28,1),Array(29,1),Array(30,1),Array(31,1),Array(32,1),Array( _
33,1),Array(34,1),Array(35,1),Array(36,1),Array(37,1),Array(38,1),Array(39,1), _
Array(40,1),Array(41,1),Array(42,1),Array(43,1),Array(44,1),Array(45,1),Array( _
46,1),Array(47,1),Array(48,1),Array(49,1),Array(50,1),Array(51,1),Array(52,1), _
Array(53,1),Array(54,1),Array(55,1),Array(56,1),Array(57,1),Array(58,1),Array( _
59,1),Array(60,1),Array(61,1),Array(62,1),Array(63,1),Array(64,1),Array(65,1), _
Array(66,1),Array(67,1),Array(68,1),Array(69,1),Array(70,1),Array(71,1),Array( _
72,1),Array(73,1),Array(74,1),Array(75,1),Array(76,1),Array(77,1),Array(78,1), _
Array(79,1),Array(80,1),Array(81,1),Array(82,1),Array(83,1),Array(84,1),Array( _
85,1),Array(86,1),Array(87,1),Array(88,1),Array(89,1),Array(90,1),Array(91,1), _
Array(92,1),Array(93,1),Array(94,1),Array(95,1),Array(96,1),Array(97,1),Array( _
98,1),Array(99,1),Array(100,1),Array(101,1),Array(102,1),Array(103,1),Array(104 _
,1),Array(105,1),Array(106,1),Array(107,1),Array(108,1),Array(109,1),Array(110, _
1),Array(111,1),Array(112,1),Array(113,1),Array(114,1),Array(115,1),Array(116,1 _
),Array(117,1),Array(118,1),Array(119,1),Array(120,1),Array(121,1),Array(122,1) _
,Array(123,1),Array(124,1),Array(125,1),Array(126,1),Array(127,1),Array(128,1), _
Array(129,1),Array(130,1),Array(131,1),Array(132,1),Array(133,1),Array(134,1)
End Sub
Wie kann ich dieses problem lösen ?
----------------------- BEARBEITEN ----------------------------
Ich versuchte, Sie zu code ändern, wie Sie Sie vorschlagen:
Sub Macro2()
'
' Macro2 Macro
'
' Keyboard Shortcut: Ctrl+e
'
Selection.TextToColumns Destination := Range("A1"), DataType := xlDelimited, TextQualifier := xlDoubleQuote, ConsecutiveDelimiter := FALSE, Tab := FALSE, Semicolon := FALSE, Comma := TRUE, Space := FALSE, Other := FALSE, FieldInfo _
:= Array(Array(1,1),Array(2,1),Array(3,1),Array(4,1),Array(5,1),Array(6,1), Array(7,1),Array(8,1),Array(9,1),Array(10,1),Array(11,1),Array(12,1),Array(13,1),Array(14,1),Array(15,1),Array(16,1),Array(17,1),Array(18,1),Array(19,1) _
End Sub
Aber nachdem versucht, Sie zu speichern, bekomme ich die Fehlermeldung "Compile error: invalid character at last lin Array(19,1)_"
Habe ich versucht zu löschen,_, aber es war der gleiche Fehler.
Lesen Sie bitte meinen EDIT.....
Sie müssen halten Sie blank/Leerzeichen vor dem Unterstrich, die Sie vermissen. Sie haben es so:
ja, ich habe versucht, aber ich bekomme die gleichen Fehler, jetzt darauf hingewiesen, Sub Makro2()
lassen Sie uns deutlich machen - Ihre Bearbeitung, in Makro2 wird nicht eine komplette sub?? was ich Ihnen in meiner Antwort ist nur ein Teil des sehr langen original-code. Ich nahm nur sechs Zeilen und machen Sie verdichtet zu zeigen, wie es funktioniert. Sie müssen das gleiche zu tun, mit allen kompletten code von dir. Sie nicht brauchen, um alles kompakt in 2 Zeilen. Versuchen Sie kompakt an zwei aufeinanderfolgenden Zeilen in einem, sondern für den kompletten code!!
Hmm, ich dachte dieses "Array()" ist nur wenige Zeilen und collumns also, wenn ich Sie nicht benutzen, dann makro ausgewählt weniger collumns und Linien... Also muss ich dann mit diesen arrays zu welcher Anzahl ? Ich normall wählen Sie einfach collum Ein und drückte dann auf "Text in Spalten". Meine .csv-Dateien sind in verschiedenen Größen, hat man 1000 Zeilen hat ein anderes 10000....
Sie müssen halten Sie blank/Leerzeichen vor dem Unterstrich, die Sie vermissen. Sie haben es so:
) _
oder , _
oder ; _
!!ja, ich habe versucht, aber ich bekomme die gleichen Fehler, jetzt darauf hingewiesen, Sub Makro2()
lassen Sie uns deutlich machen - Ihre Bearbeitung, in Makro2 wird nicht eine komplette sub?? was ich Ihnen in meiner Antwort ist nur ein Teil des sehr langen original-code. Ich nahm nur sechs Zeilen und machen Sie verdichtet zu zeigen, wie es funktioniert. Sie müssen das gleiche zu tun, mit allen kompletten code von dir. Sie nicht brauchen, um alles kompakt in 2 Zeilen. Versuchen Sie kompakt an zwei aufeinanderfolgenden Zeilen in einem, sondern für den kompletten code!!
Hmm, ich dachte dieses "Array()" ist nur wenige Zeilen und collumns also, wenn ich Sie nicht benutzen, dann makro ausgewählt weniger collumns und Linien... Also muss ich dann mit diesen arrays zu welcher Anzahl ? Ich normall wählen Sie einfach collum Ein und drückte dann auf "Text in Spalten". Meine .csv-Dateien sind in verschiedenen Größen, hat man 1000 Zeilen hat ein anderes 10000....
InformationsquelleAutor thaking | 2014-01-27
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie Daten-Typ ist der gleiche für jedes Feld können Sie verwenden Sie einfach diese:
Ich denke, das sollte es tun?
Hoffe, das hilft.
InformationsquelleAutor L42
Too many lines continuation
bezieht sich auf Zeichen, die Sie finden werden die und von die meisten der Zeilen in den code, den Sie vorgestellt:_
(Unterstrich). Was Sie tun müssen, ist zum komprimieren der code durch hinzufügen einiger Zeilen in die andere.In anderen Worten - Sie benötigen weniger Zeilen code, aber machen Sie länger.
Beispiel:
WICHTIG
Wenn wir dies tun Sie bitte sicher, dass Sie Links (leer) Leerzeichen vor dem Unterstrich am Ende der einzelnen Zeilen. Sie müssen etwas wie:
InformationsquelleAutor Kazimierz Jawor
Freundlich versuchen, diesen code dem der Benutzer aufgefordert wird, um einen Bereich auszuwählen, dann gilt der text in Spalte-Funktion. Hinweis: die Parameter-Werte ändern kann, abhängig von den Daten, die Ihre Arbeit mit. -> Quelle Link
InformationsquelleAutor Developer