http://qs321.pair.com?node_id=161978


in reply to Sorting Tab file

Another option (albeit larger and slower) is to fully embrace the Dark Side:
#!/usr/bin/perl use strict 'vars'; use warnings; use Win32::OLE qw(with); $Win32::OLE::Warn = 3; my $Excel; eval {$Excel = Win32::OLE->GetActiveObject('Excel.Application')}; die "Excel not installed" if $@; unless (defined $Excel) { $Excel = Win32::OLE->new('Excel.Application', sub {$_[0]->Quit;}) or + die "Cannot start Excel"; } $Excel->{Visible} = 1; my $Book = $Excel->Workbooks->Add; my $Sheet = $Book->Worksheets(1); my $Filename = "c:/windows/desktop/some.txt"; my $Tab = $Sheet->QueryTables->Add("TEXT;". $Filename, $Sheet->Range(" +A1")); $Tab->{Name} = "Job Status"; with($Tab, FieldNames => 1, RowNumbers => 0, FillAdjacentFormulas => 0, PreserveFormatting => 1, RefreshOnFileOpen => 0, RefreshStyle => 1, # xlInsertDeleteCells SavePassword => 0, SaveData => 1, AdjustColumnWidth => 0, RefreshPeriod => 0, TextFilePromptOnRefresh => 0, TextFilePlatform => 2, # xlWindows TextFileStartRow => 1, TextFileParseType => 1, # xlDelimited TextFileTextQualifier => 1, # xlTextQualifierDoubleQuote TextFileConsecutiveDelimiter => 0, TextFileTabDelimiter => 1, # Tabs! TextFileSemicolonDelimiter => 0, TextFileCommaDelimiter => 0, TextFileSpaceDelimiter => 0, TextFileColumnDataTypes => [1, 9, 9, 9, 1], # Not sure about this li +ne ); $Tab-> Refresh->{BackgroundQuery} = 0; # Do what you normally do in excel here...

Matthew Musgrove
Who says that programmers can't work in the Marketing Department?
Or is that who says that Marketing people can't program?