【求助】EXCEL 怎樣自動抓取儲存格位置? [論壇存檔]
文章推薦指數: 80 %
如此一來應該是要知道列的數字吧? 欄位的話就可以設定為1 了 cells(rows,1) 不知道要怎樣取得rows的數字?
PCZONE討論區>▲--電腦軟體討論區>--OFFICE相關軟體討論版>【求助】EXCEL怎樣自動抓取儲存格位置?PDA【求助】EXCEL怎樣自動抓取儲存格位置?deepblue2004-02-06,09:05PM想要請教一下
如果我想要使用自動抓取儲存格位置的功能
需要使用哪一個屬性?
address?addresslocal?
抓出來的$A$1要怎樣使用?
還有可以不可以舉出如何使用的範例?
多謝指導!leonchou2004-02-06,10:51PMCells(1,1).Address==>"$A$1"
Cells(1,1).Address(0,0)==>"A1"
選取A1:C5,Selection.Address(0,0)==>"A1:C5"
PrivateSubWorksheet_Change(ByValTargetAsRange)
IfTarget.Address(0,0)<>"A1"ThenExitSub
......
EndSub
傳回值是一個儲存格位置的字串.
要用在何處,範圍太廣很難敍述..
不如說說你想做什麼.:)deepblue2004-02-07,12:09AM比如說
我現在選取C5這一個儲存格
想要設計一個指令可以自動變更A5這一個儲存格的內容(顏色等等!)
不知道要怎樣設計?
然後假如我選取M6的話A6的儲存格也會跟著變化
假如要這樣的話
應該是要用到cell吧?
如此一來應該是要知道列的數字吧?
欄位的話就可以設定為1了
cells(rows,1)
不知道要怎樣取得rows的數字?leonchou2004-02-07,03:13AM需以Event實現此功能..
如果只能選一格,可這樣寫--
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
IfTarget.Count>1ThenExitSub
Cells(Target.Row,1).Font.Color=vbRed
EndSub
如果允許選多格,可這樣寫--
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
Target.EntireRow.Columns(1).Font.Color=vbRed
EndSub
這是工作表事件,要放在sheet模組之中.deepblue2004-02-07,07:28AM多謝您了
我試試看
如果有問題再請教您:Ddeepblue2004-02-07,06:36PM再想要請教一下
假如我想要做一個可以自動變更顏色的巨集要怎樣設定
比如果
我現在選取D3
A3會變為紅色
但是如果我離開了D3的話
A3會變回原本的顏色?leonchou2004-02-07,10:36PM由於無法得知前次選哪一格,這可分兩種情形:
1.A欄其他格都設為預設顏色(黑色),這個好辦。
2.A欄其他格原本不一定是黑色字。
欲保留原來顏色就需要一點技巧。
以下範例是在只能選一格的前提下--
第1種情形:
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
IfTarget.Count>1ThenExitSub
Me.UsedRange.Columns(1).Font.Color=vbBlack
Cells(Target.Row,1).Font.Color=vbRed
EndSub
第2種情形:
PrivateSubWorksheet_SelectionChange(ByValTargetAsRange)
Staticpre_addr,pre_color
IfTarget.Count>1ThenExitSub
OnErrorResumeNext
Range(pre_addr).Font.Color=pre_color
WithCells(Target.Row,1)
pre_addr=.Address
pre_color=.Font.Color
.Font.Color=vbRed
EndWith
EndSub
解釋:
用Static宣告變數可使其值保留在記憶體中而不消失。
Static只限於程序層次(如Sub)中使用。
在此例中用pre_addr及pre_color保留前次A欄的位址及顏色。
但第1次使用時因pre_addr及pre_color沒有值會發生錯誤,
所以利用OnError來略過此錯誤。
大家若有其他不同的方法,歡迎提出來討論。
:)leonchou2004-02-07,10:44PM有個"儲存格模擬checkbox"的例子,
有異曲同工之妙,有興趣可參考。
http://qa1.pcuser.com.tw/total_view.asp?CurNumber=339576leonchou2004-02-08,04:14PM這裡有其他方式可以參考:
http://www.excelhelp.net/cgi-bin/forum/topic.cgi?forum=8&topic=2245
"格式化條件"方式的想法很好,程式也很精簡。
但不知是什麼原因,執行起來會稍有延遲的感覺...
anyway,提供參考。
jute2004-02-10,05:17PM嗯...小弟剛好也有個類似的問題...
不過我另外開個討論串好了:DvBulletin
延伸文章資訊
- 1VBA004 取得啟用中的儲存格位址 - 錦子老師
Chapter VBA VBA004 取得啟用中的儲存格位址Section 如果目前最前方的表為工作表,而非圖表、表單等等…,就回傳回作用中單一儲存格的絕對位址, ...
- 2Excel VBA Find 搜尋資料、關鍵字教學與範例 - Office 指南
FIND("國泰", LookIn:=xlValues, LookAt:=xlPart) ' 如果有找到,則顯示儲存格位置與內容 If Not cell Is Nothing Then MsgB...
- 3Range.Address 屬性(Excel) | Microsoft Docs
附註:以Excel VBA 7.1 進行測試的結果顯示不一定需要明確的起始點。 ... 下列範例對Sheet1 中的同一儲存格位址使用了四種不同的表達模式。
- 41015Excel尋找資料所在儲存格位置-ADDRESS函數| 錦子老師
Excel尋找資料所在儲存格位置-ADDRESS函數. ... ADDRESS 函數 根據指定的列和欄號碼,取得工作表中儲存格的位址。 語法. ADDRESS(row_num, column_n...
- 5EXCEL VBA:儲存格@ 我的生活.我自己 - 隨意窩
Item(5,3) '引儲存格C5 '作用儲存格:ActiveCell ActiveCell. ... 201205310000EXCEL VBA:儲存格 ?未分類. 儲存格. [R1C1]格式...