マクロ記録実行で実行時エラー'1004'発生
excel2010
B2セルに文字列が入っています。
文字と数値の混載です。
数値の位置は不定です。
L2のセルで、下記判定をします。
B2セルの文字列(約20文字程度)の左から4番目がドだったら、数値を抽出、ド以外だったら空白。
WEBで計算式があったので、それをそのままマクロの記録としました。
Range("L2").Select
ActiveCell.FormulaR1C1 = _
"=IF(RIGHT(LEFT(RC[-10],4),1)=""ド"",MID(RC[-10],1/MAX(INDEX(ISNUMBER(--MID(RC[-10],ROW(INDIRECT(""1:""&LEN(RC[-10]))),1))/ROW(INDIRECT(""1:""&LEN(RC[-10]))),)),MAX(INDEX(ISNUMBER(--MID(RC[-10],ROW(INDIRECT(""1:""&LEN(RC[-10]))),1))*ROW(INDIRECT(""1:""&LEN(RC[-10]))),))-1/MAX(INDEX(ISNUMBER(--MID(RC[-10],ROW(INDIRECT(""1:""&LEN(RC[-10]))),1))/ROW(INDIRECT(""1:""&LEN(R" & _
"),))+1)*1,"""")"
Range("L3").Select
で記録されます。
上記を、マクロの実行すると実行時エラー'1004'
アプリケーション定義またはオブジェクト定義のエラーです。
と表示されます。
何がおかしいのでしょうか?
シートで、マクロでなく、L2セルでF2リターンとする分には、数値が表示されます。
下記は、L2の中身です
=IF(RIGHT(LEFT(B2,4),1)="ド",MID(B2,1/MAX(INDEX(ISNUMBER(--MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1))/ROW(INDIRECT("1:"&LEN(B2))),)),MAX(INDEX(ISNUMBER(--MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1))*ROW(INDIRECT("1:"&LEN(B2))),))-1/MAX(INDEX(ISNUMBER(--MID(B2,ROW(INDIRECT("1:"&LEN(B2))),1))/ROW(INDIRECT("1:"&LEN(B2))),))+1)*1,"")