返回列表 发帖
本帖最后由 aloha20200628 于 2024-11-16 11:20 编辑

回复 1# 小白龙

修理 *.csv 中的大数值字段为 ="..." 特殊格式化字段是为 excel 载入 *.csv 先做 ‘备餐’,若不用 ‘备餐’ 而直接在 excel 重置单元格格式为 "0",也许更为便捷,见以下代码... 代码中第7行假设第 C 列为身份证号码字段(楼主可自定义)
  1. $csvFile = "C:\Users\Administrator\Desktop\1966\OK.csv"
  2. $xlsxFile = "C:\Users\Administrator\Desktop\1966\OK2.xlsx"
  3. $xcl = New-Object -ComObject Excel.Application
  4. $xcl.Visible = $false; $xcl.DisplayAlerts = $false
  5. $wb = $xcl.Workbooks.Open($csvFile)
  6. $ws = $wb.Sheets.Item(1); $n = $ws.UsedRange.Rows.Count
  7. $ws.range("C1:C$n").NumberFormat = "0"
  8. $wb.SaveAs($xlsxFile, 51); $wb.Close(); $xcl.Quit()
复制代码

TOP

本帖最后由 aloha20200628 于 2024-11-16 22:02 编辑

回复 1# 小白龙

更正》6楼代码仅用于 *.csv 包含15位长度以内的数值字段,若包含更多位数字段则须在excel中用 ‘导入外部数据’ 方法载入 *.csv(预先不必对 *.csv 做任何修改),具体步骤如下:
      打开 excel.exe》
      选择 '数据' 菜单 》'导入外部数据'
      在盘区目录中选择目标文件 *.csv 》
      选择 '下一步' 》
      选择 '逗号' 分隔符 》
      选择 '下一步' 》
      选择 大数据所在列 》
      选择 列数据格式 '文本' 》
      选择 '完成' 》'导入位置'(默认=$A$1,即第1列第1行)》选择 '确定'
仅供参考...

TOP

返回列表