Excel 基于单元格自动添加列

Excel 基于单元格自动添加列,excel,vba,Excel,Vba,我有个问题,我有50米长的铁路线路。我可以根据空间分布该路线,例如,我每隔10米将路线分布到柱上。像这样, Column A: Column B: Column C: Column D: Column E: Column F: 0 10 20 30 40 50 我还有rail变量的位置。我想将50米长的路线每隔10米的空间分布到立柱中,我想将轨道位置添加到21米。看起来像

我有个问题,我有50米长的铁路线路。我可以根据空间分布该路线,例如,我每隔10米将路线分布到柱上。像这样,

Column A: Column B:   Column C:  Column D:    Column E:      Column F:
 0         10             20          30           40            50
我还有rail变量的位置。我想将50米长的路线每隔10米的空间分布到立柱中,我想将轨道位置添加到21米。看起来像这样

Column A: Column B:   Column C:  Column D:    Column E:      Column F: Column G:
  0         10             20          21         30           40            50
我的意思是,当我在单元格中输入轨道位置的值时,excel必须控制该值,如果excel工作表中不存在该值,则必须添加一个新列。一定是上面的样子


有可能吗?提前谢谢

您没有提到在哪里输入数据。如果输入上一数据的数据结束,则使用以下子项

Sub AddColumn()
Dim LastClmn
LastClmn = Range("A1").End(xlToRight).Address

    Range("A1:" & LastClmn).Select
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range("A1:" & LastClmn), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
    With ActiveWorkbook.Worksheets("Sheet1").Sort
        .SetRange Range("A1:" & LastClmn)
        .Header = xlGuess
        .MatchCase = False
        .Orientation = xlLeftToRight
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
(1) 现有数据

(2) 添加新数据

(3) 运行sub后(我使用命令按钮)


我认为可以从左到右对数据进行排序,也可以通过手动排序来实现。如果您在另一个单元格中输入数据,假设您在
D5
单元格中输入数据,则必须自定义上述子单元格。