• ベストアンサー

Formulaでの書き込みについて

Formulaプロパティを使った記述のときに、 Cells(29,6)=IF(H28<>0,"",IF(AND(A28<B28,A29>B29),"Long",IF(AND(A28>B28,A29>B29),"Short",""))) とこのように、入力する文字列の中で""として文字やブランクを表示させようとするとオブジェクトのエラーとなってしまいます汗 セルに直接入力すると大丈夫なのですが、VBAでFormulaプロパティを使って記述するとエラーになってしまうので、どうすればいいのか分からず困っています、お願いします!

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

Formulaプロパティは数式の文字列を設定しますので 文字列内の"は ""と重ねてやれば"を表せます したがって IF(H28<>0,"",IF(AND(A28<B28,A29>B29),"Long",IF(AND(A28>B28,A29>B29),"Short",""))) といった数式は Cells(29,6).Formula="IF(H28<>0,"""",IF(AND(A28<B28,A29>B29),"""Long""",IF(AND(A28>B28,A29>B29),"""Short""","""")))" といった具合にします ifの条件成立時のブランクは "" と ""といった具合で"が4個になります LongやShortの文字列は一番外側の"の組でこの中が『文字列だよ』を表します そのすぐ内側の""が"に変換されるので """と3個必要になります

meragottu
質問者

お礼

解決しました、ありがとうございました!

関連するQ&A