Excel使用筆記(二) 巨集之VBA使用

2021-10-02 23:18:42 字數 1606 閱讀 5191

在前面文章中,我們建立了「省市區」**聯動的效果,但是發現乙個問題:修改第一級和第二級的目錄,後邊的層級不會跟隨變化,也不會清除資料。

所以採用巨集去處理,這裡使用的是vba。

將下列**複製進編輯器,對應的單元格修改,就會觸發時間。

//**中包含三個部分:1、**列表變化的部分、

///2、計算觸發的部分、3、根據前乙個單元格的值顯示資料的部分

private sub worksheet_change(byval target as range)

dim rng as range

if target.row < 2 then exit sub '修改第一行(標題)不往下執行

for each rng in target

'**列表聯動

if rng.column = 1 then '修改一級標題

rng.offset(0, 1).clearcontents '清除二級

end if

if rng.column = 2 then '修改二級

rng.offset(0, 1).clearcontents '清除**

end if

'計算除法

if rng.column = 6 then

if rng.value <> 0 then

rng.offset(0, 2) = rng.offset(0, 1) / rng

end if

end if

if rng.column = 7 then

if rng.offset(0, -1).value <> 0 then

rng.offset(0, 1) = rng / rng.offset(0, -1)

end if

end if

if rng.column = 8 then

if rng.offset(0, -2).value <> 0 then

rng = rng.offset(0, -1) / rng.offset(0, -2)

if rng.value >= 0.95 then

rng.offset(0, 1).value = "是"

else

rng.offset(0, 1).value = "否"

end if

end if

end if

'根據數字顯示

if rng.column = 9 then

if rng.offset(0, -1).value >= 0.95 then

rng.value = "是"

else

rng.value = "否"

end if

end if

next

end sub

學點VBA之EXCEL 二

1 在vba中建立乙個窗體,初始化其位置,並呼叫之.sub callform userform1.show 顯示窗體 userform1.left 600 顯示位置 userform1.top 180 end sub private subcommandbutton1 click callform ...

git 使用筆記二

通過最近git的學習以使用,感覺是越來越順手了,也更深入了 git有四種原子物件 1塊 blob 內容 2目錄樹 tree 關係 3提交 commit 4標籤 tag 物件id為sha1雜湊,表示為40位的16進製制數,具有全域性唯一標識 例 git hash object file name 生成...

Mac使用筆記(二)

前一篇mac使用筆記 談論了一些我使用mac os x的心得,但內容太少,隨著我進一步使用,我發現了更多有趣和有用的功能,所以有了這個第二篇,文章介紹的不完全是使用的技巧,有些是對系統的機制的說明,有些則是對mac os x的設計理念的評述。18,瀏覽器safari的前進和後退 前進,兩個手指向左划...