簡體   English   中英

我如何在VBA中的ActiveCell中添加+1

[英]How do i add + 1 to activecell in vba

我一直在獲取運行時13錯誤。 我正在嘗試做的所有事情都將1加到activecell。

     dim rang as range
     rang = activecell + 1
     msgbox rang

你不設置rang參考。

Set rang = ActiveCell

一個問題了。

您依賴於隱式轉換和默認屬性,這使了解實際情況變得比原本困難得多。

rang.Value = CLng(ActiveCell.Value) + 1
MsgBox rang.Value

如果由於運行時錯誤13而導致ActiveCell.Value ,則ActiveCell.Value不是整數值。 您不能合法地為String添加+1 ...或執行任何帶有錯誤值的操作(包括比較)。 在使用它IsError ,請使用IsError確定單元格是否包含可以使用的值:

If Not IsError(rang.Value) Then
    MsgBox rang.Value
End If

您要像這樣引用活動單元格的值

rang = ActiveCell.Value + 1

編輯-運行時錯誤13是類型不匹配,基本上,您正在嘗試合並不兼容的數據類型(假設活動單元格包含數字,而不是格式化為文本的數字)。 嘗試這個。

Dim rang as Integer
rang = ActiveCell.Value + 1
msgbox rang

您可以通過以下方式將格式為文本的數字轉換為數值:復制一個單元格,然后粘貼特殊字符,然后選擇乘號(假設內容作為數字有效)

Sub addOne()
ActiveCell = ActiveCell.Value + 1
End Sub

嘗試這個。 這只會在當前值上加1。 確保其不是活動單元格中的字符串值。 希望對您有所幫助。

暫無
暫無

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

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