[[20201121171340]] 『VBAのFormulaで勝手にアットマークがつく』(じょあ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBAのFormulaで勝手にアットマークがつく』(じょあ)

VBA計算式を入力したところ、ワークシートを参照している箇所になぜかアットマークが勝手に入ってしまいます。Updateによるものなのかもしれませんが、消し方が分かりません。
どのようにすればよいか教えていただけないでしょうか。
<VBA>
.Range("O2:O" & LrowLST).Formula = "=INDEX(先月Heatmap!$H$2:$S$" & LrowPHM & ",MATCH(B2&(""*""&Y2&""*""),先月Heatmap!$S$2:$S$" & LrowPHM & "&先月Heatmap!$H$2:$H$" & LrowPHM & ",0),6)"
<セル内の結果>
=INDEX(先月Heatmap!$H$2:$S$68,MATCH(B54&("*"&Y54&"*"),@先月Heatmap!$S$2:$S$68&@先月Heatmap!$H$2:$H$68,0),6)

なぜかアットマークが2か所入ってしまいます。
セルで手動でアットマークを削除するとうまく動くのですが、アットマークがあると#VALUE!になってしまいます。

< 使用 Excel:Office365、使用 OS:Windows10 >


 よくわからないけど、Excel:Office365ならスピルが
関係しているのかな?
FormulaをValueかFormula2にすると、どうなりますか?
(はまちゃん) 2020/11/21(土) 17:52

 Office365だと、その数式は古いタイプの配列数式と認識されたんじゃないですかね(自信なし)

 Formula2プロパティでやってみてください。

 >.Range("O2:O" & LrowLST).Formula = "・・

   .Range("O2:O" & LrowLST).Formula2 = "・・
                                   ↑ここ

 ※ Office365では「XLOOKUP関数」が使えるので、そう言う数式の出番は減っています。

(半平太) 2020/11/21(土) 17:54


はまちゃん様、半平太様
早々にご指導頂きありがとうございます。Formula2で動きました!!!
XLOOKUPなんてものもあったのですね。
まだまだ知らない事や新しい事が多くこちらは大変勉強になり感謝しております。
ありがとうございました。
(じょあ) 2020/11/21(土) 18:57

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.