簡體   English   中英

如果活動單元格包含文本“ a”,則為Visual Basic,然后在右側的單元格中插入1

[英]Visual Basic if active cell contains text “a” then insert a 1 into the cell to the right

任務是,如果當前選定的單元格包含“ a”,則在右側的單元格中插入1,然后(由於下面的數據)在下方插入新行,並在1下方的單元格中填充0。

因此,如果單元格包含“ a”,則當宏運行時它將離開; 1 0

1位於a右側的單元格中,而1位於新行中,位於1下方的單元格中。

我目前擁有的代碼是;

Sub ChangeAToCells()
Dim text As String
text = "a"
Dim text0 As String
text = "b"
Dim text1 As String
text = "0"
Dim text2 As String
text = "1"


If ActiveCell = text Then
ActiveCell.Formula = text1
ActiveCell.Offset(1).EntireRow.Insert
ActiveCell.Offset(1, 0).Select
ActiveCell.Formula = text2
End If



End Sub

問題很明顯,單元格的選擇不起作用,我無法正確退出循環,

Sub ChangeAToCells()
If ActiveCell = "a" Then
   ActiveCell.Offset(0, 1) = 1
   ActiveCell.Offset(1).EntireRow.Insert
   ActiveCell.Offset(1, 1) = 0
End If
End Sub

您期望該代碼做什么? 首先,為同一字符串分配4個不同的值,然后將一個單元格與一個字符串進行比較,如果它們相同,則將兩個單元格的值設置為尚未初始化的兩個字符串的值。

我認為您也打算初始化text0text1text2 ,而不是初始化text四次。

我不明白您所說的“編輯循環”是什么意思。 您的代碼中沒有循環。

暫無
暫無

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

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