2012-08-16 81 views
6

Đây là vấn đề rất giống với mô tả here. Tuy nhiên, tôi cần thực hiện theo chiều ngang và sự cố của tôi xảy ra với ngày ngày. Tôi đang ở trên máy Mac.Chuyển đổi XLSX sang CSV chính xác

This là ảnh của tài liệu .xlsx của tôi. Tôi có rất nhiều mục giống như các mục trong ba hàng đầu tiên và tôi muốn chuyển đổi chúng thành CSV dưới dạng ba hàng cuối cùng. Nhưng vấn đề của tôi là thế này:

  • 2012-08-16 (trong A1) sẽ trở thành 41.137 (trong A4)
  • phiên của tôi từ 08:00 đến 09:00 là 01:00 giờ dài (xem H1 và I1 và J1) trở thành mớ hỗn độn - , 0,333333333333333,0,375,
  • Phiên của tôi từ 09:00 đến 10:00 có số cùng một vấn đề như trên, chỉ các số lộn xộn là khác nhau.

mục tiêu cuối cùng của tôi là để xuất khẩu bảng thời gian .xlsx của tôi vào toggl

T.B. vấn đề nhỏ có thể dẫn đến những thực:

  • A1 2012/08/16 trở thành 16-Aug-12
  • J1 01:00:00 trở nên 01:00 cũng như trở thành 08:00:00 08:00 và 09:00 trở thành 08:00:00 và cứ tiếp tục như vậy.

Trả lời

7

Giải pháp đơn giản nhất là chỉ cần "Lưu dưới dạng ..." và chọn CSV làm loại tệp.

Tôi đoán bạn đang cố thực hiện điều này theo một cách tự động. Nếu các giả định sau đây là đúng:

  • bạn đang ở trên một nền tảng Windows
  • Excel đã được cài đặt

cách dễ nhất để chuyển đổi "XLSX" thành "CSV" là với một chút VB script:

Set objArgs = WScript.Arguments 
InputName = objArgs(0) 
OutputName = objArgs(1) 
Set objExcel = CreateObject("Excel.application") 
objExcel.application.visible=false 
objExcel.application.displayalerts=false 
set objExcelBook = objExcel.Workbooks.Open(InputName) 
objExcelBook.SaveAs OutputName, 23 
objExcel.Application.Quit 
objExcel.Quit 

Gọi này như:

wscript script.vbs C:\...\file.xlsx C:\...\file.csv 

Cập nhật: Hãy xem điều này posting thực hiện chuyển đổi bằng tập lệnh Perl.

Cập nhật 2 Dường như mã VBA là khó tính đối với đường dẫn. Đường dẫn không đủ tiêu chuẩn được giải quyết liên quan đến thư mục tài liệu của bạn. Vì vậy, đối với kết quả có thể tái sản xuất, hãy sử dụng đường dẫn đầy đủ cho các tệp đầu vào và đầu ra.

+0

Tôi đang sử dụng mac. Có, tôi _do_ muốn làm điều đó một cách tự động. – jacob

+0

Tôi đã cố gắng hết sức tò mò và không tìm thấy tập tin ''file.xlsx' '. Kiểm tra chính tả của tên tệp và xác minh rằng vị trí tệp là chính xác.'. Tôi chạy lệnh từ Command Prompt từ bên trong thư mục chứa tất cả các tập tin. – cusman

+0

Thử sử dụng đường dẫn đầy đủ tới tệp.xlsx. –