[英]Excel VBA - Checking a Sequence of Numbers and Replacing Next or Last Value if Necessary
我很難解決這個問題。 我試過使用case語句和if / else語句,但沒有運氣。 這是我的問題! 我在一列中有一個數字序列,例如42,43,49,50,其中42始終跟數值43,而49始終跟數值50。
有時我有一個數字序列,其中的數字順序不正確,例如42,43,49,43。 在這種情況下,我需要將模式更改為42,43,49,50。 在另一種情況下,我有一個數字序列,例如42,50,49,50,需要將模式更改為49,50,49,50。
這是我的邏輯:第一種情況...如果單元格= 50,則返回最后一個單元格,如果該單元格= 43,則將該單元格的值更改為49。第二種情況...如果單元格= 49,則轉到下一個可用單元格,如果cell = 43將該值更改為50。請記住,必須處理空白單元格,如下面的列所示。
A 42“空” 43“空” 49“空”“空”“空” 43
讓我知道您是否需要更多說明,感謝您的幫助! 我希望我遵循問題格式,如果沒有,對不起!
謝謝謝謝!!!
像這樣
Sub Tester()
Dim c As Range, i As Long, vLast
Set c = Cells(Rows.Count, 1).End(xlUp)
Do While c.Row >= 2
If Len(c.Value) > 0 Then
If Len(vLast) > 0 Then
If vLast = 50 Then c.Value = 49
If vLast = 43 Then c.Value = 42
End If
vLast = c.Value
End If
Set c = c.Offset(-1, 0)
Loop
End Sub
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.