簡體   English   中英

VBA宏-接收偏移對象定義的錯誤

[英]VBA Macro - Receiving Offset Object Defined Error

我正在嘗試遍歷電子表格的一列中的行,其中在第1列中有一個時間,在第2列中有一個日期,在第3列中有一個值。該值不時更改,我需要單超時,該值已更改。 我有以下代碼,給我一個(運行時錯誤1004-應用程序定義或對象定義的錯誤)和高級提示

  activecell.offset(-1,0).Range("A1").select 

我一直在試圖解決它/研究整個下午的問題,但找不到適合我的答案。 任何幫助,將不勝感激

Sub Timestamp

    Range("C1").Select

    While ActiveCell.Value <> ""

        Number = ActiveCell.Value
        Counter = Counter +1
        activecell.offset(-1,0).Range("A1").select 

        If ActiveCell.Value <> Number Then

            activecell.offset(-1,0).Range("A1").select 
            Time = ActiveCell.Value
            Sample = Sample +1
            activecell.offset((Counter - Sample),3).Range("A1").select 
            ActiveCell.Value = Time
            activecell.offset(-(Counter - Sample),-1).Range("A1").select 

        End If
    Loop
End Sub

您無需選擇單元格即可獲取其值。 您只需要參考它們即可。 VBA是一種面向對象的編程語言。 看一下本文檔的基礎知識: 面向對象的VBA

至於獲得Number更改次數的計數,這應該為您提供該值,並且您可以添加需要處理的任何其他代碼。

    Option Explicit

Sub test()
Dim rng As Range
Dim number As Long
Dim counter As Integer

    Set rng = Range("C1")
    Do While rng.Value <> ""
        number = rng.Value
        If rng.Offset(1, 0).Value <> number Then
            counter = counter + 1
        End If
    Set rng = rng.Offset(1, 0)
    Loop
    MsgBox counter & " changes"
End Sub

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM