【问题标题】:VBA: set txt to be printed in Portrait modeVBA:设置txt以纵向模式打印
【发布时间】:2014-06-05 06:28:43
【问题描述】:

这一次我正在与一个 .txt 文件作斗争,该文件不想(以编程方式)设置为以纵向模式而不是横向模式(显然是默认模式)打印。

问题是我知道如何使用 Word 或 Excel 等应用程序做到这一点,但遗憾的是,我正在使用一个根本没有 Office 的设备。

我根本没有提供任何代码,因为我的问题非常简单,我想我需要一个简单的命令来解决它。我基本上(以编程方式)在我的子程序中做的是:

  • 以 #1 的形式打开文件(我知道这似乎是 80 年代,但我不想修改正在运行的系统,可能会出现错误)
  • 将文本写入文件
  • 关闭 #1
  • 保存文件
  • 调用文本编辑器外壳向用户显示文件

然后如何自动将打印格式设置为纵向?

P.s.= 我无法插入用户表单或对象以“特殊方式”打印 txt 文件,用户必须从 txt 编辑器本身打印文件(以防万一)

【问题讨论】:

  • 您已标记此 [VBA],但您说您的设备上没有 Office。你用什么语言写作?还有(最重要的是)我们在谈论哪个文本编辑器?
  • 嗯,VBA 是适用于应用程序的 Visual Basic……不仅适用于 Office。我正在用 VBA 编程,我的应用程序有它的本机 VB 命令(如 excel 中的那些)。你想知道设备吗?网络分析仪,即使这不会带来任何有用的信息。关于文本编辑器,本机运行Windows,所以文本编辑器是记事本。

标签: vba text printing text-editor


【解决方案1】:

首先要说明的是:文本文件(或除文本之外的任何其他内容)中不存储任何打印设置。打印设置将在您用于打印的任何内容中进行控制 - 在本例中为记事本或写字板。

NotepadWordpad 只有非常有限的命令行开关,遗憾的是不包括页面设置。理论上,您也许可以使用SendKeys(参见herehere)自动设置肖像,但如果有可能,它可能会很困难且不可靠(重点和时间是两个问题)。

在您的问题参数范围内,我看不到解决此问题的好方法。在您的应用程序中添加一个对象可能是最好的解决方案。您可以尝试寻找可以安装的替代文本编辑器,该编辑器更易于自动化。唯一的另一种选择可能是在打印机驱动程序中设置默认值,并希望在用户打开记​​事本时保持这些默认值。

【讨论】:

  • 我认为它是“不,你不能”:) 不幸的是,我使用该硬件的可能性非常有限,无法安装任何其他软件...
  • 我已经添加了另一个建议,但除此之外我什么都想不出来(我已经知道是错的......但也没有其他人提出任何建议!)
  • 在打印机驱动程序中进行更改的问题是必须对每台机器进行更改,并且会影响所有打印的默认设置。
猜你喜欢
  • 1970-01-01
  • 2017-12-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-26
  • 1970-01-01
  • 1970-01-01
  • 2014-06-17
相关资源
最近更新 更多