[Excel][VBA]3.快速調用、使用儲存格

文、意如

續上一篇都是在同一個工作表處理儲存格,

接下來要介紹的是如何到指定的工作表或活頁簿處理儲存格。

 

任務一:基本函數認識(Select、Column)
任務二:複製與貼上儲存格(Copy、PasteSpecial)
任務三:調用工作表Worksheets( )函數
任務四:調用活頁簿Workbooks( )函數
任務一:基本函數認識(Select、Column)
Ex1. 選取儲存格範圍(在儲存格上點一下)
Range("儲存格範圍").Select
選取(E1)儲存格
Range("E1").Select
選取(A1與C3)儲存格
Range("A1 , C3").Select
選取(A1到C3)儲存格
Range("A1","C3").Select
Ex2.讀出C1在第幾欄
A = Range("C1").Column

 

 

 

Ex3. 在E1儲存格中讀出C1是哪一欄
Range("E1") = Range("C1").Column

 

 

 

任務二:複製與貼上儲存格(Copy、PasteSpecial)

首先需要選取任一儲存格Select,再搭配Selection.Copy來複製選取的儲存格。

例:將E1儲存格的內容 test123,複製貼上到A1:C3

 

 

 

所以在這邊拆解成三步驟

步驟一:選取要複製的範圍,例如選取(E1)儲存格
Range("E1").Select
步驟二:複製
Selection.Copy

 

步驟三:再選取要貼上的儲存格 ,例如A1~C3
Range("A1","C3").Select
步驟四:貼上
Selection.PasteSpecial
完整程式碼參考如下:
Sub test()
    Range("E1").Select
    Selection.Copy
    Range("A1", "C3").Select
    Selection.PasteSpecial
End Sub

 

 

 

進階複製(只複製格式或只複製值)

只複製格式(中間有一格空格)

.PasteSpecial xlPasteFormats

例:複製E1儲存格,只複製格式到A5:C5

Sub test()
    Range("E1").Select
    Selection.Copy
    Range("A5", "C5").Select
    Selection.PasteSpecial xlPasteFormats
End Sub

 

 

 

只複製值(中間有一格空格)

.PasteSpecial xlPasteValues

例:複製E1儲存格,只複製值到A5:C5

Sub test()
    Range("E1").Select
    Selection.Copy
    Range("A6", "C6").Select
    Selection.PasteSpecial xlPasteValues
End Sub

 

 

 

任務三:調用工作表Worksheets( )函數
Ex1. 指定第一個工作表
使用Worksheets(1) 或是Worksheets("工作表1") 都可以
Ex2. 在儲存格E1中顯示第一個工作表的名字
Range("E1") = Worksheets(1).Name

 

 

 

Ex3. 開啟第一個工作表
Worksheets(1).Activate

 

 

 

Ex4. 在工作表1中E1儲存格給予值(輸入欄位為總價)
Worksheets(1).Range("E1")="總價"

 

 

 

任務四:調用活頁簿Workbooks ( )函數
Ex1. 建立一個新的活頁簿
Workbooks.Add

 

 

 

Ex2. Workbooks代表所有活頁簿-關閉所有活頁簿
Workbooks.close

 

 

 

Ex3. 如果是要指定其一本則不需加s - 指定開啟第一本活頁簿後儲存
Workbook(1).Save
Ex4. 當前活頁簿儲存
ActiveWorkbook.Save

 

 

 


 

Yiru@Studio - 關於我 - 意如