我是 VBA 的新手。我創建了 2 個按鈕。按鈕僅用于更改單元格中資料的來源。例如,我從作業表“ecommerce(D2C)”中提取數字,當我單擊按鈕 SaaS 時,它將從作業表“SaaS”中提取資料。對于電子商務按鈕,反之亦然。我只是為此使用 Range.Raplace 方法。但問題是,SaaS 按鈕有效,從“SaaS”表中獲取數字,但是當我單擊電子商務時,它不會將數字從“SaaS”表更改回“電子商務”表。如果你能幫助我解決這個問題,我會很高興。我不知道我在哪里犯了錯誤,因為我對它們都使用了幾乎相同的代碼。
Sub SaaS()
Cells.Select
Selection.Replace What:="ecommerce(D2C)", Replacement:="SaaS", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A1").Select
End Sub
Sub Ecommerce()
Cells.Select
Selection.Replace What:="SaaS", Replacement:="ecommerce(D2C)", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A2").Select
End Sub ```
uj5u.com熱心網友回復:
我想我可以重現你得到的行為。我必須做的是從更改ecommerce(D2C)為Ecommerce(考慮到這是作業表名稱)。如果您嘗試使用該Replace方法會導致公式不正確,則它什么也不做。
Sub SaaS()
Cells.Select
Selection.Replace What:="Ecommerce", Replacement:="SaaS", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A1").Select
End Sub
Sub Ecommerce()
Cells.Select
Selection.Replace What:="SaaS", Replacement:="Ecommerce", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A2").Select
End Sub
uj5u.com熱心網友回復:
此方法對于“電子商務(D2C)”失敗,因為 Excel 要求您將這種型別的作業表名稱放在單引號內以用于公式:例如"='ecommerce(D2C)'!A1"。
單擊“Saas”按鈕后,它會變成"='SaaS'!A1",但不需要單引號,因此 Excel 會自動將其調整為"=SaaS!A1". 因此,現在,當您再次嘗試將其切換回來時,它將失敗,因為您要求 Excel 創建對 的參考"=ecommerce(D2C)!A1",而它不允許這樣做。
因此,修復很簡單,添加兩個單引號:
Sub Ecommerce()
Cells.Select
Selection.Replace What:="SaaS", Replacement:="'ecommerce(D2C)'", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False
Range("A2").Select
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/464241.html
