![]() |
VBA - Text To Columns in VBA
Group, I have a .dat file that is separated by comma's between elements. I want to do a Text to Columns. When I do a macro record I get the following. Unfortunately, my columns may be different as well as the number of columns. How would I do the same in VBA for a .dat file that will be different each time I run the macro? I want to do this automatically as part of a larger VBA project. Any thoughts or suggestions? Tony Sub Macro1() ' ' Macro1 Macro ' Macro recorded 5/17/2006 by LTC Jocius ' ' Workbooks.OpenText Filename:= _ "C:\Documents and Settings\Super_User2\Desktop\_6222CD1May06.dat", Origin _ :=437, StartRow:=1, 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)), TrailingMinusNumbers:=True End Sub -- ajocius ------------------------------------------------------------------------ ajocius's Profile: http://www.excelforum.com/member.php...o&userid=17695 View this thread: http://www.excelforum.com/showthread...hreadid=543164 |
VBA - Text To Columns in VBA
Try Macro1 Macro ' Macro recorded 5/17/2006 by LTC Jocius ' ' Workbooks.OpenText Filename:= _ "C:\Documents and Settings\Super_User2\Desktop\_6222CD1May06.dat", Origin _ :=437, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _ , ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False, Comma:= _ True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 1)), TrailingMinusNumbers:=True End Sub -- mudraker ------------------------------------------------------------------------ mudraker's Profile: http://www.excelforum.com/member.php...fo&userid=2473 View this thread: http://www.excelforum.com/showthread...hreadid=543164 |
VBA - Text To Columns in VBA
I believe you can open comma delimited files with the Open method.
Workbooks.Open Filename:= _ "C:\Documents and Settings\Super_User2\Desktop\_6222CD1May06.dat", Format:=2 With OpenText, FieldInfo is optional. If omitted, the columns will be formatted as General. "ajocius" wrote: Group, I have a .dat file that is separated by comma's between elements. I want to do a Text to Columns. When I do a macro record I get the following. Unfortunately, my columns may be different as well as the number of columns. How would I do the same in VBA for a .dat file that will be different each time I run the macro? I want to do this automatically as part of a larger VBA project. Any thoughts or suggestions? Tony Sub Macro1() ' ' Macro1 Macro ' Macro recorded 5/17/2006 by LTC Jocius ' ' Workbooks.OpenText Filename:= _ "C:\Documents and Settings\Super_User2\Desktop\_6222CD1May06.dat", Origin _ :=437, StartRow:=1, 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)), TrailingMinusNumbers:=True End Sub -- ajocius ------------------------------------------------------------------------ ajocius's Profile: http://www.excelforum.com/member.php...o&userid=17695 View this thread: http://www.excelforum.com/showthread...hreadid=543164 |
All times are GMT +1. The time now is 09:46 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com