
以下流れのとおり
1番マクロを実行
2番セル範囲に@がついてしまう
3番@が入らないように、関数を入力したいです
ご存じの方、ご指南お願いします
1
【コード※エラーにならずに、該当範囲のセルに関数が入力されます】
ws2.Range(Cells(6, 13), Cells(lastrow, 13)).Formula = "=INDEX(過去分依頼データ!$A$2:$K$10000,MATCH(C6&E6,過去分依頼データ!$B$2:$B$10000&過去分依頼データ!$C$2:$C$10000,0),1)"
2
セルM6から最終行まで以下が入力される
=INDEX(過去分依頼データ!$A$2:$K$10000,MATCH(C6&E6,@過去分依頼データ!$B$2:$B$10000&@過去分依頼データ!$C$2:$C$10000,0),1)
※セル範囲に@がついてしまう
@過去分依頼データ!$B$2:$B$10000&@過去分依頼データ!$C$2:$C$10000
3 正しくは@が無い状態で、セルに入力したい。すると関数は動きます
=INDEX(過去分依頼データ!$A$2:$K$10000,MATCH(C6&E6,過去分依頼データ!$B$2:$B$10000&過去分依頼データ!$C$2:$C$10000,0),1)
No.2ベストアンサー
- 回答日時:
ご質問者の環境はバージョン365ということなので、気づいていないかもしれませんが、
=INDEX(過去分依頼データ!$A$2:$K$10000,MATCH(C6&E6,過去分依頼データ!$B$2:$B$10000&過去分依頼データ!$C$2:$C$10000,0),1)・・・①
という数式はスピル機能のないバージョンでは正しく機能しません。
スピル機能のないバージョンの場合
=INDEX(過去分依頼データ!$A$2:$K$10000,INDEX(MATCH(C6&E6,過去分依頼データ!$B$2:$B$10000&過去分依頼データ!$C$2:$C$10000,0),0),1)・・・②
のように記述するか、CTRL+SHIF+ENTERで確定して「配列数式」にするしかありません。
{=INDEX(過去分依頼データ!$A$2:$K$10000,MATCH(C6&E6,過去分依頼データ!$B$2:$B$10000&過去分依頼データ!$C$2:$C$10000,0),1)}
※配列数式にすると見かけ上、上記のように数式全体が波括弧で囲まれます。
VBAのFORMULAプロパティは動的配列をサポートしませんので、365の環境でFORMULAプロパティを使うと、「敢えてスピル機能を使用しない」と判断されてしまいます。
このため、おそらくVBAで数式を設定したセルには「#VALUE!」エラーが表示され、数式もご質問者のご説明のように、一部に@がついたものになってしまうと思います。
試しに、
ws2.Range(Cells(6, 13), Cells(lastrow, 13)).Formula = "=INDEX(過去分依頼データ!$A$2:$K$10000,INDEX(MATCH(C6&E6,過去分依頼データ!$B$2:$B$10000&過去分依頼データ!$C$2:$C$10000,0),0),1)"
というコードに変更して結果を見てください。
おそらく、数式頭部に「@」は付くものの「#VALUE!」エラーにはならず、数式の結果が表示されると思います。
スピル機能の有効なバージョンにおいて「@」はFORMULAからFORMULA2に変更すべき箇所を教えてくれる注意ポイント表示ということのようです。
従って、動的配列に対応させるにはFORMULA2プロパティを使うことになります。詳しくは以下のURLをご覧ください。
https://learn.microsoft.com/ja-jp/office/vba/exc …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで30日以内に同内容の入力があったら色を付ける 2 2023/03/04 12:32
- Excel(エクセル) Excelの関数で起きた現象の原因がわかりません。 2 2024/02/01 22:53
- Excel(エクセル) 【マクロ】Call関数で呼び出した場合、共通の変数宣言は、省略できますか? 2 2025/02/09 10:17
- Excel(エクセル) 【マクロ】関数の入力にてエラーがでます 1 2024/12/22 18:42
- Excel(エクセル) Excelで、別シートの表のステータスに伴った動的な自動転記をしたいです。 2 2023/06/14 15:56
- Excel(エクセル) excelVBAについて。 1 2024/11/25 11:02
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Excel(エクセル) スプレッドシートの関数について教えてください 2 2024/07/04 14:17
- Excel(エクセル) EXACT関数とIF関数の組み合わせについて 2 2024/04/17 08:26
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 12:30
このQ&Aを見た人はこんなQ&Aも見ています
-
ExcelのIF関数との組み合わせの相談
Excel(エクセル)
-
自動的に日付入力 応用
Excel(エクセル)
-
エクセルの設定、下へスクロールすると表のヘッダ項目がシートの列番号の部分に表示される
Excel(エクセル)
-
-
4
エクセルで教えてください。 例えばSUM関数でA1+B1の値をC1に出すとします。 C1数式で=SU
Excel(エクセル)
-
5
エクセルについてどう関数を使えばいいか教えてください。
Excel(エクセル)
-
6
Excelでプルダウン選択(I1セル)した文字列に該当したC列のセル行のみを切り替えて表示したいです
Excel(エクセル)
-
7
Excelでの文字入力について
Excel(エクセル)
-
8
Excelで作成した出欠表から日付ごとの欠席者を書き出す方法について教えてください。
Excel(エクセル)
-
9
Excelについて教えてください。
Excel(エクセル)
-
10
Excel関数の解決方法
Excel(エクセル)
-
11
Excelのデーターバーについて
Excel(エクセル)
-
12
エクセルオートサムでセル選択できません
Excel(エクセル)
-
13
エクセルについて教えてください
Excel(エクセル)
-
14
Excelの条件付書式について教えてください。
Excel(エクセル)
-
15
【マクロ】条件付き書式設定をマクロ化するには?
Excel(エクセル)
-
16
【マクロ、画像あり】A表かB表かどちらか判断をして、処理をする
Excel(エクセル)
-
17
「cells」が上手く機能しない
Excel(エクセル)
-
18
関数を教えて下さい
Excel(エクセル)
-
19
別のシートの指定列の最終行を返す関数の式を教えて下さい。
Excel(エクセル)
-
20
エクセルの数式について教えてください。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル ドロップダウンリスト...
-
エクセル
-
特定のセルだけ結果がおかしい...
-
エクセルのdatedif関数を使って...
-
【マクロ】アクティブセルの時...
-
【関数】同じ関数なのに、エラ...
-
【マクロ】A列にある、日付(本...
-
エクセルの循環参照、?
-
【マクロ】3行に上から下に並...
-
【マクロ】WEBシステムから保存...
-
【マクロ】EXCELで読込したCSV...
-
iPhoneのExcelアプリで、別のシ...
-
【エクセル】期限アラートについて
-
【条件付き書式】シートの中で...
-
Excelファイルを開くと私だけVA...
-
Excelの新しい空白のブックを開...
-
派遣会社とかハローワークとか...
-
マクロ・VBAで、当該ファイルの...
-
VBA チェックボックスをオーバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelファイルを開くと私だけVA...
-
エクセルについてどう関数を使...
-
マクロ・VBAで、当該ファイルの...
-
エクセルのセルに画像は埋め込...
-
エクセルで、一部のセルだけ固...
-
【マクロ、画像あり】A表かB表...
-
エクセルでカウントする
-
【マクロ】コードを少しでも、...
-
VBA_日時のソート
-
エクセルで教えてください。 例...
-
エクセル 月間シフト表で曜日ご...
-
セルの左に余白を付ける
-
エクセル
-
エクセルについて教えてください
-
2枚のエクセル表で数字をマッチ...
-
ExcelのIF関数との組み合わせの...
-
エクセルのファイルのコピーを...
-
エクセルで二つのブックの違い...
-
空白処理を空白に
-
Excelのチェックボックスについ...
おすすめ情報