cormanaz has asked for the wisdom of the Perl Monks concerning the following question:
Now I am trying to read the sheet via Win32::OLE like so:
This results in $date containing a timestamp string in the format YYYY-MM-DD HH:MM:SS. Does anyone know how to get milliseconds included in the timestamp? I suppose it requires something other than DATE_LONGDATE (which I learned about at this helpful node) in the last line, but I can't find alternative arguments to the Date method. Does anyone know where to find?use strict; use feature ':5.10'; use Win32::OLE qw(in with CP_UTF8); Win32::OLE->Option(CP => CP_UTF8); use Win32::OLE::Const 'Microsoft Excel'; use Win32::OLE::Variant; use Win32::OLE::NLS qw(:LOCALE :DATE); $Win32::OLE::Warn = 3; # die on errors. +.. my $Excel = Win32::OLE->GetActiveObject('Excel.Application') || Win32: +:OLE->new('Excel.Application', 'Quit'); # get already active Excel $Excel->{'Visible'} = 1; my $Book = $Excel->Workbooks->Open("mybook.xlsx"); # open Excel file - +- requires explicit DOS path my $Sheet = $Book->Worksheets(1); # name or number my $lastrow = $Sheet->UsedRange->Find({What=>"*",SearchDirection=>xlPr +evious,SearchOrder=>xlByRows})->{Row}; my $sheetdate = Variant(VT_DATE,$Sheet->Range("A5")->{'Value'}); my $date = $sheetdate->Date(DATE_LONGDATE);
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Win32::OLE Excel how to get milliseonds from date variant?
by pryrt (Abbot) on Jan 26, 2024 at 17:01 UTC | |
by cormanaz (Deacon) on Jan 26, 2024 at 18:43 UTC | |
|
Re: Win32::OLE Excel how to get milliseonds from date variant?
by Marshall (Canon) on Jan 26, 2024 at 00:16 UTC | |
by cormanaz (Deacon) on Jan 26, 2024 at 15:43 UTC |