返回列表 上一主題 發帖

[發問] 求救~VBA撰寫

[發問] 求救~VBA撰寫

Dear 大大
我這邊有一個VBA問題,不知道如何撰寫,可以請各位專家協助幫忙

問題如下圖所示,希望最後呈現結果如K欄與M欄,基本上問題就是
利用B欄內的條件依序判斷,

1.        B2=B3,則K2=A2 與 M2=A3
2.        B2=B4,則K3=A2 與 M3=A4
3.        B2=B5,則K4=A2 與 M4=A5
4.        B2<>B6則往下跳至B3儲存格進行作業
5.        B3=B4, 則K5=A3 與 M5=A4
6.        B3=B5, 則K6=A3 與 M6=A5
7.        B3<>B6則往下跳至B4儲存格進行作業

問題如下圖所示,希望最後呈現結果如K欄與M欄,基本上問題就是
利用B欄內的條件依序判斷,

1.        B2=B3,則K2=A2 與 M2=A3
2.        B2=B4,則K3=A2 與 M3=A4
3.        B2=B5,則K4=A2 與 M4=A5
4.        B2<>B6則往下跳至B3儲存格進行作業
5.        B3=B4, 則K5=A3 與 M5=A4
6.        B3=B5, 則K6=A3 與 M6=A5
7.        B3<>B6則往下跳至B4儲存格進行作業



活頁簿1.rar (12.09 KB)

回復 1# peter631114
試試看
  1. Option Explicit
  2. Sub Test()
  3.     Dim Rng As Range, i, ii
  4.     Set Rng = [b2]
  5.     ' Rng.Cells(1) =[b2], Rng.Cells(2) =[b3]
  6.     ' Rng.Offset(, -1)  , -1 為 向左一欄(A),0 為 Rng所在的欄位(B),1 為 向右一欄(C)
  7.      'Rng.Offset(i - 1, -1)  ,i - 1 為 列號
  8.     ii = 2
  9.     Do While Rng <> ""
  10.         i = 2
  11.         Do While Rng = Rng.Cells(i)
  12.             Cells(ii, "k") = Rng.Offset(, -1)
  13.             Cells(ii, "m") = Rng.Offset(i - 1, -1)
  14.             i = i + 1:             ii = ii + 1
  15.          Loop
  16.         Set Rng = Rng.Offset(1)
  17.     Loop
  18. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

回復 2# GBKEE
大大:
真的是萬分感謝,可以用了~~謝謝~~我愛這個討論區了~~我要慢慢吸收大大你所撰寫的內容,有問題我再提出詢問~~再次感謝

TOP

回復 3# peter631114

Snap4.jpg (131.22 KB)

Snap4.jpg

測試.rar (6.96 KB)

TOP

大大
不好意思,上次說明有誤,可否參考上面敘述,重新幫忙修改

TOP

        靜思自在 : 不要小看自己,因為人有無限的可能。
返回列表 上一主題