Board logo

標題: 如何尋找同一欄下一個儲存格有資料位置 [打印本頁]

作者: enoch    時間: 2013-10-15 12:59     標題: 如何尋找同一欄下一個儲存格有資料位置

例如在A1 , A5, A6, A10 都有資料
若在A1開始, 如何確定下一個有資料儲存格是A5
再下一個是A6及A10

請指教
作者: cji3cj6xu6    時間: 2013-10-15 15:52

你只是要看a1 ∼ a10的儲存格裡是否不是空白是嗎?如果是的話以下應該可以參考∼

for address =1 to 10
if range("a" & address)="" then
........

next address
作者: stillfish00    時間: 2013-10-15 16:02

本帖最後由 stillfish00 於 2013-10-15 16:04 編輯
  1. Sub TEST()
  2.   Dim a
  3.   
  4.   For Each a In [A:A].SpecialCells(xlCellTypeConstants, 23)
  5.     Debug.Print a.Address(0, 0)
  6.   Next
  7. End Sub
複製代碼
回復 1# enoch
作者: GBKEE    時間: 2013-10-15 16:34

回復 3# stillfish00
樓主會是要這樣嗎?
  1. Option Explicit
  2. Sub TEST()
  3.   Dim a
  4.   For Each a In Range("A:A").SpecialCells(xlCellTypeConstants).Areas
  5.     a.Select
  6.   Next
  7. End Sub
複製代碼

作者: enoch    時間: 2013-10-15 17:07

是要這答案, 又學多了一樣, 謝謝
作者: enoch    時間: 2013-10-16 10:37

發現有問題出現,
因為程式中想逐一知道各儲存格出現的行數位置
但當儲存格是連續時, 如A5:A7 都有資料
只知道第一行位置A5 , 跳過了第6同7行,
可以解決這問題嗎?
請指教
作者: enoch    時間: 2013-10-16 10:53

願來不要 Area 就可以
For Each a In Range("A:A").SpecialCells(xlCellTypeConstants)
作者: GBKEE    時間: 2013-10-16 16:32

回復 6# enoch
  1. Option Explicit
  2. Sub TEST()
  3.   Dim a
  4.   For Each a In Range("A:A").SpecialCells(xlCellTypeConstants).Areas
  5.     a.Cells(1).Select
  6.   Next
  7. End Sub
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)