- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCELで参照シート名含む計算式の変更マクロ)
EXCELで参照シート名含む計算式の変更マクロ
このQ&Aのポイント
- EXCELで参照シート名を含む計算式の変更について、マクロを使用して拠点ごとにシート名を変更する方法について教えてください。
- マクロを使用して、EXCELの複数シート間で参照される計算式のシート名を拠点ごとに変更する方法について教えてください。
- EXCELのマクロを使用して、参照シート名を含む計算式を拠点ごとに変更する方法について教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
数式からシート名の抽出例 数式の、= 直後にシート名がある場合です。 Dim f As String Dim n As Integer f = Sheets("シート1").Range("D1").Formula n = InStr(f, "!") MsgBox Mid(f, 2, n - 2) とか Dim f As String f = Sheets("シート1").Range("D1").Formula MsgBox Split(Split(f, "=")(1), "!")(0) D1セルの数式からシート名を抽出 参照シート名を当てはめてからA1に書き込む というようにすればどうでしょうか。 Dim f As String Dim ws As String f = Sheets("シート1").Range("D1").Formula ws = Split(Split(f, "=")(1), "!")(0) Sheets("シート1").Range("A1").Formula = "=" & ws & "!B1/C5"
その他の回答 (1)
- xls88
- ベストアンサー率56% (669/1189)
回答No.2
こちらでどうでしょうか。 Split関数で文字列を区切る http://officetanaka.net/excel/vba/tips/tips62.htm
質問者
お礼
ありがとうございました とても助かりました!
補足
ありがとうございます。教えていただいた Dim f As String Dim ws As String f = Sheets("シート1").Range("D1").Formula ws = Split(Split(f, "=")(1), "!")(0) Sheets("シート1").Range("A1").Formula = "=" & ws & "!B1/C5" で、うまくいきそうです。 Splitは知らなくてネット見ても今一使い方が?なんで、宜しければ意味が分かればと・・・ 4行目の「f」→対象も文字列、「"="」→区切り?、「(1)」「(0)」の 意味は?