VBA筆記系列

2021-08-19 18:33:39 字數 2074 閱讀 6029

整表複製貼上-->清空記憶體

sheet1.copy after:=sheet1
新建sheet

sheets.add after:=worksheets(sheet_start)
字典:

set d = createobject("scripting.dictionary")

d.removeall ''''清空字典

if d.exists(arr(x, 1)) then  '''判斷鍵是否已經存在

陣列整體貼上:

range("a1").resize(行,列) = 陣列名
vba遍歷資料夾

set fs = createobject("scripting.filesystemobject")

set f = fs.getfolder(path)

for each fd in f.files

for each fd in f.subfolders

關閉警告

關閉警告(包括替換同名檔案,含有個人資訊等)
if workbooks.count > 1 then

for x = workbooks.count to 1 step -1

wb = windows(x).caption

if wb <> thisworkbook.name then

workbooks(wb).close false

end if

next

end if

排序:

range(cells(321, c_to), cells(i, c_to)).sort _

key1:=columns(c_to), _

order1:=xldescending, _

header:=xlno

陣列賦值

arr=sheet3.range("d7:d9")
32位變64位  申明:

declare ptrsafe sub
ppt頁面內容讀取

set f = thisworkbook.sheets(2)

f.cells(1, 1) = "頁碼"

f.cells(1, 2) = "順序"

f.cells(1, 3) = "型別"

f.cells(1, 4) = "內容"

i = 2

j = 1

c = ppt.presentations(1).slides.count

for c2 = 1 to c

set s1 = ppt.presentations(1).slides(c2)

f.cells(i, 1) = j

j = j + 1

k = 1

for each sh in s1.shapes

f.cells(i, 2) = k

f.cells(i, 3) = sh.type

f.cells(i, 6) = sh.name

if sh.hastextframe then

'            f.cells(i, 4) = sh.texteffect.text

end if

if sh.hastable then

f.cells(i, 5) = sh.table.columns.count

f.cells(i, 4) = sh.table.rows.count

end if

if sh.type = 3 then

'            f.cells(i, 4) = sh.chart.chartdata.workbook.sheets(1).columns.count

end if

i = i + 1

k = k + 1

next

next

ppt.quit

end sub

VBA學習筆記

答 一種可以自動反覆遍歷資料的巨集。9.錄製巨集?答 選擇 工具 巨集 錄製新巨集 在對話方塊中,為你將要做的巨集設定乙個快捷鍵。確定之後,可以看到乙個小的工具欄,上面有個 停 字。10.執行巨集?答 1 選擇任何乙個單元格。2 選擇 工具 巨集 巨集 顯示 巨集 對話方塊。3 選擇自己錄製的巨集名...

VBA系列 4 VBA中的物件和集合

vba的物件是以分層的結構組織的,本節介紹excel中的物件和集合 關於集合 在vba裡邊有乙個重要概念,即集合。集合是一組屬於同一類的物件,集合 本身也是物件。如workbooks是當前開啟的所有workbook物件的集合 worksheets是包含在特定workbook物件中的所有workshe...

VBA系列 3 巨集錄製器

使用巨集錄製器的注意事項 啟動巨集錄製器 啟用excel,選擇 開發工具 錄製巨集 命令 在 錄製巨集 對話方塊中有一些可以設定的選項。清理已錄製的巨集 在很多情況下,錄製好的巨集 中包含了可以被刪除的無關命令。巨集錄製器生成的 不一定是最有效的,理解這一點很重要。如果檢驗生成的 會看到excel通...