返回活动单元格的列索引,以便可以对其进行操作以形成新的范围

时间:2016-04-11 12:24:41

标签: excel vba excel-vba

我正在尝试使用一个公共单元格,其中计算始终开始,然后我想根据日期以及自电子表格上次更新以来经过的周数来翻译范围。

例如Active Cell列索引已经过去了4周和12周。所以Active Cell现在需要是第16列。然后我想选择右侧的12列和所有使用的行。

$ Sub DataUpdate()


Dim WeekCom As Double
Dim WeekUpd As Double
Dim DatSt As Range
Dim DifWks As Double


WeekCom = Int("WeekCommencing")
WeekUpd = Int("Lastupdate")
DifWks = WeekCom - WeekUpd
Set DatSt = Range("DataStart")

If WeekCom > WeekUpd + 7 Then
With ActiveSheet
    .Range(Cells(row(DatSt), = Column(DatSt)+ DifWks), Cells
           (Cells.Rowindex.SpecialCells(xlCellTypeLastCell), = Column(DatSt)+ DifWks+12))

End With

End If

End Sub $

这是我到目前为止我不确定它是否有用,因为我是VBA的新手。

此致

格雷格

Sub DataUpdate()

Dim WeekCom As Long
Dim WeekUpd As Long
Dim DifWks As Long
Dim DatSt As Range
Dim newRange As Range

**WeekCom = CInt(Range("WeekCommencing").Value)**
**WeekUpd = CInt(Range("Lastupdate").Value)**
DifWks = WeekCom - WeekUpd
Set DatSt = Range("DataStart")

If WeekCom > WeekUpd + 7 Then
    Set newRange = Intersect(DatSt.Offset(0, DifWks).Resize(1, DifWks).EntireColumn, ActiveSheet.UsedRange)
End If

    MsgBox newRange.Address

End Sub

此代码似乎仍然提供“溢出”错误。它目前使用的唯一数据是格式为一般的日期,因此在40万。 @MacroMan_抱歉打扰你,但我希望你能提供帮助。我把星号放在显示错误的地方。 干杯 格雷格

0 个答案:

没有答案