excel - 将excel文件转换成prn给出不同的语言数据

标签 excel vba

将我的工作表转换为 prn 后,在我的 erp 上上传时出错,当我将 prn 转换为 txt 格式时,我看到了某种中文写的如何解决这个问题。下面的代码在“A”行中添加值 +1 并转换为 prn

Sub CONVERT()

Dim vcounter As Long
Dim ws As Worksheet

For Each ws In Sheets
  ws.Activate
  vcounter = 2
  While Range("A" & vcounter).Value <> ""
    Range("a" & vcounter).Value = Range("a" & vcounter).Value + 1   
    vcounter = vcounter + 1
  Wend
  Application.DisplayAlerts = False
  ActiveSheet.SaveAs Filename:="D:\birla soft\" & ActiveSheet.Name & ".prn"
Next ws

End Sub

最佳答案

您正在保存扩展名为 .prn 的 .xlsm/.xlsx 文件;这不会使它成为一个 .prn 文件,它仍然是一个 .xlsm/.xlsx 文件 - 扩展名不是决定文件格式的因素,它只是一个方便的指标,让我们这些弱小的人类识别我们正在看什么时候我们浏览文件。您想提供 xlTextPrinter XlFileFormat SaveAs method 的参数:

ActiveSheet.SaveAs Filename:="D:\birla soft\" & ActiveSheet.Name & ".prn", xlTextPrinter

关于此的注释:
ws.Activate

你不需要它。相反,限定这些 Range调用ws对象 - 你想迭代 Worksheets集合(Sheets 可能包含各种非工作表类型):
For Each ws In ActiveWorkbook.Worksheets ' or did you mean to iterate sheets in ThisWorkbook?
    Do While ws.Range(...)
        ws.Range(...) = ws.Range(...) + 1
        vcounter = vcounter + 1
    Loop
    Application.DisplayAlerts = False
    ws.SaveAs FileName:="..." & ws.Name & ".prn", FileFormat:=xlTextPrinter
Next

关于excel - 将excel文件转换成prn给出不同的语言数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55732875/

相关文章:

Excel另存为PDF并覆盖现有

excel - 在 .txt 文件中特定行的特定位置插入空格

VBA:从网页单击选项卡(getelementby?)

excel - 基于 64 位构建时为 "Provider cannot be found. It may not be properly installed"

excel - 在 API GetSystemTime 中使用经过的毫秒数进行性能测试

Vba:显示带点而不是逗号的小数

excel - 如何仅使用 native 公式了解 Excel 或 Google 电子表格中列中的第一个空白单元格

ms-access - Access 报告 : Page header on second page on per detail

excel - 选择备用点并在上方/下方移动标签

使用 Application.Quit 后 Excel.exe 仍在运行