• ベストアンサー

エクセルで、「1つ前のシート」を指定したいのです。

エクセルで、「1つ前のシート」を指定したいのです。 実際はマクロを使って次々に新しいシートを作っていくという作業の中での話です。 以下の式の'●●●●'の部分を「1つ前のシート」に指定したいのですが、うまくいきません。 =IF(P9>'●●●●'!K15,G1,'●●●●'!J15) ちなみにシート名は任意の「文字列」で特に規則性はありません。 また、参照したい「1つ前のシート」の名前は変数「TW」に格納されています。 ということで「関数」でも「マクロ」でもどちらでも対応可能です。 初歩的な質問ばかりで申し訳ないのですが、ご回答よろしくお願いいたします。 

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

>「1つ前のシート」の名前は変数「TW」に格納されています。 間違いなくシートの「名前」をTWに入れてあるなら,それを使って 数式を入れるセル.formula = "=IF(P9>'" & TW & "'!K15,G1,'" & TW & "'!J15)" などのように。

AMEFURIO
質問者

お礼

ありがとうございました。うまくいきました。 まだまだマクロよりも関数をメインで考えていました。「.formula」はまともに使ったことがありませんでした。 初歩的な質問に丁寧にご回答いただき、ありがとうございました。

その他の回答 (1)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

VBAの力をかります。 Sub Test() TW = Worksheets(ActiveSheet.Index + 1).Name MsgBox TW End Sub

AMEFURIO
質問者

お礼

やはり関数だけでは無理なようですね。 ありがとうございました。

関連するQ&A