2015-06-29 63 views
1

假設的行號列表,我有如下表:檢索僅可見單元格

Toto B June 12pm 
Titi A April 11pm 
Toto D January 9am 
Toto F December 8am 

我想在每行提取一些數據和填充logsheet。我已經完成了爲整個數據工作的宏。然而,我只需要提取現在選擇的數據,比方說只有第一列等於「Toto」的數據。

爲此,我使用自動篩選手動(用戶友好),然後使用

LastLine = Range("A" & Rows.Count).End(xlUp).Row 
Export_Range = Workbook.Sheets(1).Range("A2:A" & LastLine).Rows.SpecialCells(xlCellTypeVisible) 

爲避免重複宏只提取可見單元格符合條件的,我想知道是否有是輸出符合標準的行號列表的一種方式。我有一點搜索,我沒有幸運。任何想法?

+0

有幾種方法。您可以使用循環來選擇在Range範圍內進行哪些迭代,並有選擇地將實例複製到日誌文件中。你也可以嘗試加入一個'AutoFilter'。在沒有看到全部代碼的情況下很難最好地幫助你。 – user3561813

回答

1

這將一一列舉:

Sub ListThem() 
    Lastline = Range("A" & Rows.Count).End(xlUp).Row 
    msg = "" 

    For Each r In Range("A2:A" & Lastline).Cells.SpecialCells(xlCellTypeVisible) 
     msg = msg & r.Row & vbCrLf 
    Next r 
    MsgBox msg 
End Sub 

這假定自動篩選已應用。

+0

這是一個好的開始。可以存儲在列表或向量結構中嗎?我更習慣於python,所以我所指的是類似於msg [i] = r.Row。 – TazgerO

+0

我將你建議的for循環替換爲用於我的宏的循環。它的工作不需要導出行號列表。我覺得有點愚蠢,以前沒有想過。無論如何感謝您的幫助,並指出我的修復。 – TazgerO

相關問題