这看起来似乎太容易了,但是我非常绝望。

我需要做的是获取“D”列的最后一个值

大量的,例如987654321,如果值只有两位数字,则代码是正确的。我只是无法确定问题所在。

Dim lastRow As Long
lastRow = Cells(Rows.Count, "D").End(xlUp).Value
Sheets("Sheet1").TxtBox1.Value = lastRow

最佳答案

就像我在评论中提到的那样,对于如此大的数字,您必须将其声明为double。

Dim lastRow As Double

另外,由于您要将其存储在文本框中,因此您可以做两件事
  • 声明为字符串
  • 将其直接存储在文本框中。
    Option Explicit
    
    Sub Sample1()
        Dim lastRow As String
    
        With Sheets("Sheet1")
            lastRow = .Cells(.Rows.Count, "D").End(xlUp).Value
            .TextBox1.Value = lastRow
        End With
    End Sub
    
    Sub Sample2()
        With Sheets("Sheet1")
            .TextBox1.Value = .Cells(.Rows.Count, "D").End(xlUp).Value
        End With
    End Sub
    
  • 10-05 21:19