- 締切済み
vbaのエラーの認識??
あるベンダーからのリンクをsheet1(a1)に貼っています。 リンクの状態によって戻り値が"#NAME?"になることがあります。 このときにsheet1(a1)の値じゃなくsheet2(a1)の値を使いたい場合、vbaにはどういう風に書いたらよいんでしょうか? 構文エラーとかじゃなく、リンクによるエラーなので、戻り値が"#NAME?"だったらsheet2(a1)を参照ってしたいんです。 教えてください。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
回答No.1
>ベンダーからの ベンダーとは何?質問者の場合の事情じゃないの。 >リンクをsheet1(a1)に貼っています 具体的にA1セルにはどうなっているの。 VBAでリンクを張っている。 リンクと言う言葉は参照と言う単純な意味やHyperLinkその他があって もう少し丁寧に。 >戻り値が"#NAME?"になることがあります VBAの質問でありながら、この#NAMEはエクセルの関数エラーではないの?関連は? 自分だけのケースで頭がいっぱいのような気がする。あなたの見て考えているシートは読者にはみえない。他人が読んで判りやすい表現にしてください。
お礼
抽象的ですみませんでした。 具体例です。 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の中でどう書いたらよいんでしょうか?? 教えてください。
補足
たびたびすみません。 sheet("sheet1").cells(1,1).value=sheet("sheet2").cells(1,1).value は、正しくは sheets("sheet1").cells(1,1).value=sheets("sheet2").cells(1,1).value です。