拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 Excel:列数等于单元格值

Excel:列数等于单元格值

白鹭 - 2022-02-12 2330 0 0

我希望有人能指出我正确的方向:我想让列数(只有第 25 到 38 行)等于单元格 C24 中的数字。如果单元格 C24 包含 3,那么我希望列的总数为 3。我尝试了几种方法,单独添加新列没问题,但洗掉它们会使我的作业表崩溃。我尝试了下面的代码。

Sub adding()
If LastCol = Range("C24").Value Then 
ElseIf LastCol < Range("C24").Value Then
  Range("C25:C36").Select
    Selection.Copy
    Selection.Insert Shift:=xlToRight
ElseIf LastCol > Range("C24").Value Then
  Range("D25:D36").Select
  Application.CutCopyMode = False
   Selection.Delete Shift:=xlToLeft
   End If
End Sub

uj5u.com热心网友回复:

试试下面的代码:

Sub Adding()

Dim col As Long, LastCol As Long

LastCol = Cells(25, Columns.Count).End(xlToLeft).Column - 2 'This auto finds last column using row 25.
col = Range("C24").Value

If LastCol < col Then
    Range("C25:C36").Copy
    Range("C25:C36").Resize(, Abs(LastCol - col)).Insert shift:=xlToRight
ElseIf LastCol > col Then
    Range("D25:D36").Resize(, Abs(LastCol - col)).Delete shift:=xlToLeft
Else
    'if equals do what you want
End If
Application.CutCopyMode = False

End Sub

基本上我们抓取初始范围(C25:C36 用于插入,D25:D26 用于洗掉)并使用该Resize方法按列数扩展范围。我输入了最后一列的计算,但如果这不适合您,那么我们可以看看什么是正确的。因为它从 .CI 列减去 2 开始LastCol

我测验了它,它做了我相信你想要的,所以希望对你有用。让我知道。

标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *