[算表] excel依據儲存格值執行不同VBA內容

作者: rd2l4 (唉呦就是那個啊~~)   2015-01-09 16:19:20
軟體:EXCEL
版本:2007
目標:
依據特定儲存格改變設定成條件,執行不同的VBA
問題:
我是VBA新手...沒辦法寫出來T_T
一直執行失敗
資料型態:條件+執行目標
[條件]
X1 X2 X3 X4 X5
0/1 0/1 0/1 0/1 0/1
五個變數都可以是0或1,
目前把他code成連續的 ex. 00000 或 01001 etc
再轉成代號A,B,C等等,呈現在儲存格A2,從A到M
[執行目標]
行 5:15
[VBA]
若A2="A",隱藏5:5
="B",隱藏6:6
="C",隱藏5:6
="D",隱藏5:5,7:7
逗點後面都沒問題,這個簡單簡單的
目前問題:
1. 我姑狗後找到Cells.Item(1, "A"),還有get value等
不知道要用哪種才適合讓他進VBA做判定?我怎麼寫都跳錯誤...
2. VBA是否可以用dim讓他變得簡潔一點?
我目前的想法是
dim hiderange
if 1A="A", then hiderange="5:5"
elseif 1A="B", then hiderange="6:6"
end if
Range(hiderange).Select
這樣有通嗎?
感覺要寫好長啊到M,而且我if 1A="A"這邊我怎麼寫都失敗T_T
3. 是否有寫法可以讓巨集中執行其他巨集?(巨集A和B還有其他自己本身的之類的這樣)
謝謝!!
作者: soyoso (我是耀宗)   2015-01-09 16:41:00
1.是希望將那五個變數合併嗎?判定是指轉成代號嗎?2.簡潔是指簡寫嗎?如果是的話可google excel vba dim 簡寫3.執行其他巨集,如果其他模組內沒有程序時,就直接打程序名就可以如果其他模組內沒有同名的程序時dim hiderange 型態看來是字串,上面的宣告為什麼要定義是variant呢?
作者: rd2l4 (唉呦就是那個啊~~)   2015-01-09 16:51:00
應該是我亂用吧OTZ 說實話我連您的問題都看不懂了T_T
作者: soyoso (我是耀宗)   2015-01-09 16:52:00
1A是變數嗎?這樣的變數命名規則是不正確的
作者: rd2l4 (唉呦就是那個啊~~)   2015-01-09 16:52:00
我希望這個變數可以代指 依據條件變化的不同的行數1A是儲存格1A,目前我是寫If Cell(1, "A").Value = "A"這樣不通,然後google可能找不到正確的搜尋字都沒結果有的是搜尋指標下的格子內容,大多都是填到指定儲存格沒看到有讀取指定儲存格進VBA的...爬文有爬到可以實行但該文沒有寫說怎麼運作....所以卡死了OTZ
作者: soyoso (我是耀宗)   2015-01-09 16:59:00
不通,cell(1,"A")這是不正確,應為cells(1,"A") 有一個s想到可用vlookup參照的方式抓進要隱藏的列號
作者: rd2l4 (唉呦就是那個啊~~)   2015-01-09 17:04:00
這部分我可以做到,但是我不知道抓到之後要怎麼導入VBA讓他可以自動隱藏有了耶!!!!!!!!!!!太感動了!!!!!英文代碼根本不用嘛!!謝謝大人!! 太感激了,原來就是多繞了一圈根本不該繞下去的我決定把這個巨集名稱用大大的名字做為紀念!!(喂
作者: soyoso (我是耀宗)   2015-01-09 17:40:00
^^

Links booklink

Contact Us: admin [ a t ] ucptt.com