重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

あるベンダーからのリンクをsheet1(a1)に貼っています。
リンクの状態によって戻り値が"#NAME?"になることがあります。
このときにsheet1(a1)の値じゃなくsheet2(a1)の値を使いたい場合、vbaにはどういう風に書いたらよいんでしょうか?
構文エラーとかじゃなく、リンクによるエラーなので、戻り値が"#NAME?"だったらsheet2(a1)を参照ってしたいんです。
教えてください。

A 回答 (1件)

>ベンダーからの


ベンダーとは何?質問者の場合の事情じゃないの。
>リンクをsheet1(a1)に貼っています
具体的にA1セルにはどうなっているの。
VBAでリンクを張っている。
リンクと言う言葉は参照と言う単純な意味やHyperLinkその他があって
もう少し丁寧に。
>戻り値が"#NAME?"になることがあります
VBAの質問でありながら、この#NAMEはエクセルの関数エラーではないの?関連は?
自分だけのケースで頭がいっぱいのような気がする。あなたの見て考えているシートは読者にはみえない。他人が読んで判りやすい表現にしてください。

この回答への補足

たびたびすみません。
sheet("sheet1").cells(1,1).value=sheet("sheet2").cells(1,1).value は、正しくは
sheets("sheet1").cells(1,1).value=sheets("sheet2").cells(1,1).value です。

補足日時:2009/07/23 11:34
    • good
    • 0
この回答へのお礼

抽象的ですみませんでした。
具体例です。
sub t()
sheet("sheet1").cells(1,1).value=sheet("sheet2").cells(1,1).value
end sub
sheet1のa1の数式 =RtGet("IDN","JNIc1","TRDPRC_1")
sheet2のa2に 9740
sheet2のb2の数式 =a1+1
たぶんsheet1のa1に数式を入れた時点で"#NAME?"が帰ってくると思います。sub tを走らせた時点で、sheet1のa1の戻り値も"#NAME?"だと思います。もし、戻り値が"#NAME?"だったら、「sheet2のb2の数式 =a1+1」のa1をa2に変えたいというのをsub tの中でどう書いたらよいんでしょうか??
教えてください。

お礼日時:2009/07/23 11:33

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!