如何先執行VBA的程式再點選存格位置,及更改定義名稱
- 帖子
- 5
- 主題
- 2
- 精華
- 0
- 積分
- 7
- 點名
- 0
- 作業系統
- WINDOWS 8
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2010-10-25
- 最後登錄
- 2022-1-30
|
如何先執行VBA的程式再點選存格位置,及更改定義名稱
1.請問如何在執行vba程式時可以先執行程式內容,等程式執行到其中的一個詢問時再依使用者的須求點選非特點的儲存格,如:
原有作用中的儲存格在"B3",當程式執行到"請點選新的儲存格:"時,在依使用者的須求點選,可能會點選"C5"或"D8"或"E4"或.......各種可能.
2.若"A2"儲存格已定義為"產品A",而"B12"的儲存格連結為="產品A",當"A2"儲存格定義名稱想改為"產品F",應該如何以VBA編寫,以使得"A2"名稱改為
"產品F"後,"B12"的儲存格連結會自動改為="產品F".
(註:在Excel 2003中執行,Excel 2003沒有定義名稱更名的功能) |
|
|
|
|
|
|
- 帖子
- 4901
- 主題
- 44
- 精華
- 24
- 積分
- 4916
- 點名
- 143
- 作業系統
- Windows 7
- 軟體版本
- Office 20xx
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台北
- 註冊時間
- 2010-4-30
- 最後登錄
- 2025-6-14
               
|
2#
發表於 2011-12-26 10:07
| 只看該作者
回復 1# 漂流木 - Sub 中途點選()
- Dim s As Date, A As Range
- t = Now
- Do Until s >= 1 / 11520
- s = Now - t
- If s >= 1 / 34560 And A Is Nothing Then Set A = Application.InputBox("請點選儲存格", , , , , , , 8)
- Loop
- If Not A Is Nothing Then MsgBox A.Address
- End Sub
- Sub 更名()
- Dim n As Name
- For Each n In ThisWorkbook.Names
- If n.RefersToRange.Address = "$A$2" Then myname = n.Name: Exit For
- Next
- If myname = "" Then MsgBox "A2還沒建立名稱": Exit Sub
- newname = InputBox("請輸入新名稱", , myname)
- ThisWorkbook.Names(myname).Name = newname
- ActiveSheet.Cells.Replace myname, newname
- End Sub
複製代碼 |
|
學海無涯_不恥下問
|
|
|
|
|
- 帖子
- 5
- 主題
- 2
- 精華
- 0
- 積分
- 7
- 點名
- 0
- 作業系統
- WINDOWS 8
- 軟體版本
- OFFICE 2010
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2010-10-25
- 最後登錄
- 2022-1-30
|
3#
發表於 2011-12-26 12:03
| 只看該作者
|
|
|
|
|
|