• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ブックの転記で計算式も転記したい)

ブックの転記で計算式も転記したい

このQ&Aのポイント
  • 開いているもう一つのブックを転記元と認識させて作業を進める方法はありますか?
  • 転記先の列Dに、転記元の数式を保ちつつ転記する方法はありますか?
  • 値や計算式を転記するマクロの一部を省略する方法はありますか?

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

  • ベストアンサー
  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.1

> 開いているもう一つのブックを とありますが、開いているブックは必ず2つなのでしょうか? それ以外のブックが開かれている状態では絶対にこのマクロを実行しないのであれば、 Dim Bk As Workbook For Each Bk In Workbooks If Not Bk Is ThisWorkbook Then Exit For Next Bk とすれば、Bkがもう1つのブックになります。 もし、もう1つのブックが、必ず最後に開かれるのであれば、 Workbooks(Workbooks.Count) が、最後に開かれたブック=もう1つのブックになります。 数式に関してですが、その前に。 セルの値を Cells(r, c) と書いていますが、Cells(r, c).Value と書く癖をつけたほうが良いと思いますよ。 そうすれば、.Value を .Formula に変えれば、値から数式に変わるということも、解りやすくなるんじゃないでしょうか。

quia_10
質問者

お礼

回答ありがとうございました。 Set mst = Workbooks(Workbooks.Count).ActiveSheet で希望通りの動作になりました。 また、今後は"Value"を省略せずにコードを書くクセをつけたいと思います。 大変助かりました。