【问题标题】:vba format columnsvba 格式列
【发布时间】:2012-10-09 22:15:18
【问题描述】:

我正在尝试格式化新创建的工作表上的列。我无法选择并使用语句,所以我尝试了直接分配并遇到了同样的问题(一般错误 1004)。我尝试的最后一个代码是:

    Sheets("Survey Data").columns("A").NumberFormat = "0"
    Sheets("Survey Data").columns("A").VerticalAlignment = x1Bottom
    Sheets("Survey Data").columns("A").HorizontalAlignment = xlCenter
    Sheets("Survey Data").columns("A").ColumnWidth = 5

检查输出时,NumberFormat 似乎有效,但以下三个语句无效。

【问题讨论】:

  • 您是在选项显式脚本下运行它,还是没有?
  • 你能发布一个示例工作簿吗?我只是按原样在With 声明中运行它,它就像一个魅力!
  • 我不确定选项显式脚本,所以我在下面发布了整个代码。我已经成功地创建了两个额外的工作表并填充了列标题,但从那时起就遇到了问题。
  • Scott - 如何发布示例工作簿?太大了,评论区贴不出来。我可以附上它或直接给你发电子邮件吗?
  • @IainMackintosh 您将其上传到网站,或共享服务器(例如保管箱),然后将链接发布到此处以供人们使用

标签: excel vba


【解决方案1】:

尝试改变

Sheets("Survey Data").columns("A").VerticalAlignment = x1Bottom

Sheets("Survey Data").columns("A").VerticalAlignment = xlBottom

我看到的是“1”(一)而不是“l”(L)。它应该是 xlBottom 而不是 x1Bottom

【讨论】:

  • 它是小写的“L” - 与 VerticalAlignment 相同!
  • @IainMackintosh 那么您能否提供您正在使用的 excel 版本。这样的代码似乎没有任何问题。
  • MS Office 2010 Excel 14.0.6123.5001(64 位),Win 7 Ultimate。我怀疑我的宏中的其他地方一定有错误,因为我也看不到任何语法错误。
  • 啊啊!我再次检查,发现它是 '1' 而不是 'l' - 现在工作正常!感谢您的鹰眼康斯坦特!
猜你喜欢
  • 2020-04-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-28
相关资源
最近更新 更多