作者asdfjkl (asdfjkl)
看板Office
標題[算表] excel VBA 跨表擷取資料並紀錄
時間Tue Aug 15 17:41:47 2017
軟體:excel
版本:office 365
各位版大大家好,
最近剛學VBA希望能讓它自動擷取100個period(一個工作表10個period如圖一)
的資料,然後紀錄在新的工作表(如圖二)裡。
<圖一>
http://imgur.com/a/4D4TQ
<圖二>
http://imgur.com/a/kwPhS
問題描述:
如<圖一>所示,每個工作表都規律分配10個period,假如J89等於6,則填入另
一工作表如<圖二> 6的下面並紀錄I89的值,以此類推。
請問這樣vba寫得出來嗎? 我有寫了如下,但是值都抓不出來
Dim a As Long
For a = 1 To 2
If Sheets("period 1-10").Range("J89").Value = Sheets("total average").Range("B2").Value Then
Sheets("total average").Range("B" & a).Value = Sheets("period 1-10").Range("I89").Value
Next a
End sub
請問大家有什麼好方法嗎~~ 拜託拜託(論文快生不出來了)
先謝謝了 <(_._)>
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 62.214.140.228
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Office/M.1502790110.A.550.html
1F:→ soyoso: 如果實際資料為圖二依序3-20的話,可以range.offset將J89 08/15 17:49
2F:→ soyoso: 的值做欄偏移;如不連續或為文字的話可以工作表函數match 08/15 17:50
3F:→ soyoso: 取欄號,或range.find取得儲存格 08/15 17:51
4F:→ soyoso: 如要以原文來改的話,a=0 to 17或1 to 18(total average B 08/15 17:56
5F:→ soyoso: 到s欄),變數放於range.offset欄偏移,或cells欄號的部分 08/15 17:59
6F:→ soyoso: 置於cells欄號的話也可2 to 19 08/15 18:00