【问题标题】:unable to preserve border format on range.insert无法在 range.insert 上保留边框格式
【发布时间】:2013-08-14 05:22:09
【问题描述】:

有没有办法在保留边框格式的同时插入新行?我可以在保留除边框之外的所有格式的同时插入。我正在创建的宏本质上会提示用户输入一个值(strXX),然后在列表中搜索它。如果不存在,则执行以下操作。

iRow = WorksheetFunction.Match(strXX, Columns("A")) + 1
Intersect(Range("Z:TT"), Rows(iRow)).Insert _
XlInsertShiftDirection.xlShiftDown, CopyOrigin:=Excel.XlInsertFormatOrigin.xlFormatFromLeftOrAbove

关于 CopyOrigin 有什么我必须更改的吗?似乎有可以通过粘贴功能使用的方法,但是在使用 .Insert 时我找不到类似的方法。

非常感谢任何帮助...谢谢!

更新(8/15): 自从这篇文章以来,我已经重新格式化了我的电子表格中的内容,并且能够解决这个问题。我仍然对反馈非常感兴趣,因为原始配置无法复制边框。这肯定会在以后重新出现。请参阅下面的支持信息。

将更新 2 张工作表。第一个效果很好,因为它保留了单元格格式(不需要边框)。见下文。

这篇文章中描述的问题与第二张纸有关。插入该行并保留除边框(标准“外边框”设置)之外的所有格式。见下文。

【问题讨论】:

  • 您能否显示您想要插入新行的范围的屏幕截图(通过选择)?在我看来,您的插入区域周围没有完全设置边界,这就是结果。它们是标准边框还是复杂的?
  • 嗨,KazJaw。我已经准备好带有截图的回复,但是它不会让我提交,因为我没有足够的声望点来提交:(让我看看是否有另一种方法来完成截图。谢谢!
  • @KazJaw - 由于我的声誉点,我没有看到发布屏幕截图的选项。插入项目上方/下方的行包含标准的“外部边框”边框。新行包含“垂直”边框,但在新行上方缺少水平边框。
  • 您可以在互联网的任何地方上传您的文件或屏幕截图。接下来,添加指向该文件的链接以在此处发表评论或对您的问题发表评论。
  • @KazJaw - 请查看帖子中的更新,因为我现在可以上传屏幕截图。谢谢!

标签: excel vba


【解决方案1】:

只需按照 cmets 中建议的代码进行操作,类似这样

With cell.Borders(xlEdgeTop)
   .LineStyle = xlContinuous
   .ColorIndex = 0
   .TintAndShade = 0
   .Weight = xlThin
End With
With cell.Borders(xlEdgeBottom)
   .LineStyle = xlContinuous
   .ColorIndex = 0
   .TintAndShade = 0
   .Weight = xlThin
End With
With cell.Borders(xlEdgeRight)
   .LineStyle = xlContinuous
   .ColorIndex = 0
   .TintAndShade = 0
   .Weight = xlThin
End With
With cell.Borders(xlEdgeLeft)
   .LineStyle = xlContinuous
   .ColorIndex = 0
   .TintAndShade = 0
   .Weight = xlThin
End With

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-18
    • 2016-06-06
    相关资源
    最近更新 更多