返回列表 上一主題 發帖

[發問] 關於巨集程式修改問題

回復 6# 我是瑄
根據1#敘述寫入的目標工作表是工作表A,但程式碼卻是寫入到工作表C
以下程式碼是依據1#敘述不對工作表B進行篩選動作,
直接將P欄空格寫入工作表A,(寫入目標位置可自行參考更改)
  1. Sub Input_Data()
  2. Dim Rng As Range
  3. With Sheets("B") '工作表B(資料區)
  4.   r = .[Q65536].End(xlUp).Row
  5.   If Application.CountBlank(.Range("P2:P" & r)) > 0 Then 'P欄空格數量大於0
  6.      Set Rng = .Range("P2:P" & r).SpecialCells(xlCellTypeBlanks) '找到P欄空格
  7.      ad = Split(Replace(Rng.Address(0, 0), "P", ""), ",") '取得空格的列位
  8.      ar = Array(3, 1, 2, 4, 5, 6, 7, 8, 17) '寫入的欄位順序
  9.      ReDim ay(UBound(ad) + 1, UBound(ar) + 1)
  10.      For j = 0 To UBound(ad)
  11.         For i = 0 To 8
  12.            ay(j, i) = .Cells(ad(j), ar(i)).Value '將資料暫存陣列中
  13.         Next
  14.      Next
  15.   End If
  16. End With
  17. With Sheets("A") '寫入的工作表
  18.    With .[A3].Resize(j, i)
  19.      .Value = ay '將陣列寫入目標區
  20.      .Sort key1:=.Cells(1, 1) 'A欄排序
  21.    End With
  22. End With
  23. End Sub
複製代碼
學海無涯_不恥下問

TOP

        靜思自在 : 難行能行,難捨能捨,難為能為,才能昇華自我的人格。
返回列表 上一主題