【问题标题】:How can I auto fit the columns in an access table through Excel vba如何通过 Excel vba 自动调整访问表中的列
【发布时间】:2018-11-22 14:32:01
【问题描述】:

所以基本上我已经创建了一个宏来以某种方式格式化工作表,并且我有一个代码可以将这些信息导出并存储在访问数据库中。

问题是这些列是默认大小而不是自动安装的。如何通过 Excel vba 自动调整访问中的列。我试过谷歌搜索和在线搜索,但我似乎只能从访问 Excel 中找到格式。不是 Excel 访问。任何帮助将不胜感激。

谢谢

【问题讨论】:

  • 当你说 “问题是这些列是默认大小而不是自动调整的。”时,你在谈论哪些列。 你能显示截图吗?如果您谈论的是 Access 表,那么可能没有解决方案。
  • 由于某种原因不允许我添加图片,所以我会尝试更好地解释。你知道在access我们的Excel中创建表格时,单元格的大小就是Excel设置的大小。如果您的字符长度大于单元格可以容纳的长度,则单元格大小不会改变,除非您双击列顶部或将列拖动到您自己选择的大小
  • 正如我所说:如果您在谈论 Access 表,那么可能没有解决方案。

标签: excel vba ms-access


【解决方案1】:

Access 表不支持自动调整。

您可以通过CurrentDb.TableDefs("TableNameOrNumber").Fields("FieldNameOrNumber").Properties!ColumnWidth 影响 Access 中的列宽。

但是,自动调整的常用值 -2 不适用于此属性,只需将其设置为默认宽度。

这意味着您必须计算某个表格列的宽度,或者如果您使用相同的字体设置,则从 Excel 中复制宽度。

【讨论】:

  • 所以你写成:CurrentDb.TableDefs("TableNameOrNumber").Fields("FieldNameOrNumber").Properties!ColumnWidth = 1。或者我做错了什么,因为当我这样做时,列消失了
  • 嗯,您刚刚将列宽设置为 1 缇,我希望它会消失。 -1 = 默认宽度,-2 = 自动调整(不起作用),否则宽度被解释为以缇为单位的值。
  • 对不起,我不知道单位是缇。我已经按照您的建议进行了操作,并且可以正常工作。我一直在寻找解决这个问题的方法,所以我很感激。再次感谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-26
  • 2016-03-10
  • 2011-12-14
相关资源
最近更新 更多