如附檔DATA頁中所示, 在B1的下拉式清單中有"GAME1"與"GAME2",
如果希望能做到選擇GAME1之後,按下"確認"按鈕,則會將GAME1工作表的內容
複製到BUFFER頁中,而如果選擇GAME2按下"確認",則會複製GAME2工作表之
內容到BUFFER頁中; 想要做到以上的動作,那麼要在"確認"按鈕中下什麼指令,或者VBA該如何表示呢?
希望以上的問題各位能了解,並希望能給予解答~ 一起動動腦吧! 感激不盡~ :)
可列印頁面
如附檔DATA頁中所示, 在B1的下拉式清單中有"GAME1"與"GAME2",
如果希望能做到選擇GAME1之後,按下"確認"按鈕,則會將GAME1工作表的內容
複製到BUFFER頁中,而如果選擇GAME2按下"確認",則會複製GAME2工作表之
內容到BUFFER頁中; 想要做到以上的動作,那麼要在"確認"按鈕中下什麼指令,或者VBA該如何表示呢?
希望以上的問題各位能了解,並希望能給予解答~ 一起動動腦吧! 感激不盡~ :)
[Color=Blue]
Sub Apple()
'在下拉式清單中選擇了哪個項目
WhichGame = Sheets("DATA").Cells(1, 2)
'求取選擇之下拉式清單項目所對應的工作表索引
For i = 1 To Sheets.Count
K = InStr(Sheets(i).Name, WhichGame)
If K > 0 Then Exit For
Next i
'清除 Buffer 工作表內容
Sheets("Buffer").Select
Cells.Select
Selection.ClearContents
Cells(1, 1).Select
'複製選取之下拉式清單所對應的工作表
Sheets(i).Select
Cells.Select
Selection.Copy
'移至 Buffer 工作表並貼上
Sheets("BUFFER").Select
Range("A1").Select
ActiveSheet.Paste
End Sub
[/Color]
請您參考一下吧
為與工作表名稱一致,驗證清單名稱我改為 Game1 和 Game2 (無空格),因為我不會用變數指定工作表。
謝謝囉~ 有很詳盡的解答。看來自己也需要多多努力了!
簡化一下,ICLA 兄勿怪 :)
Sub Apple()
[COLOR=Green]'在下拉式清單中選擇了哪個項目[/COLOR]
WhichGame = Sheets("DATA").Cells(1, 2)
[COLOR=Green]'清除 Buffer 工作表已使用的內容[/COLOR]
Sheets("Buffer").UsedRange.ClearContents
[COLOR=Green]'複製對應的工作表至 Buffer 工作表[/COLOR]
Sheets(WhichGame).UsedRange.Copy Sheets("Buffer").Range("A1")
[COLOR=Green]'移至 Buffer 工作表[/COLOR]
Sheets("Buffer").Select
End Sub