[リストへもどる]
一括表示

投稿時間:2002/11/10(Sun) 20:44
投稿者名:まるふ
Eメール:
URL :
タイトル:
形式を指定して貼り付け→値、をVBから操作したい
関数を使ったあと、その値だけをセルに残したいんですけど
これをVBからやる方法が分かりません。
どなたか分かる方いませんか。

あと、VLOOPUPを使ったとき参照先が空白だと"0"が表示されます。
これを空白にするにはどうすればいいですか

投稿時間:2002/11/11(Mon) 13:31
投稿者名:A221
Eメール:
URL :
タイトル:
Re: 形式を指定して貼り付け→値、をVBから操作したい
#質問の趣旨からずれていたらごめんなさい。
> 関数を使ったあと、その値だけをセルに残したいんですけど

EXCELのワークシート関数をVBから使って値を残したいのでしょうか?
エクセルオブジェクトからワークシート関数を引っ張る方法と、
たとえばセルに"=Round(A1,0)"を直接書き込む方法があります。

それともVBで作った関数の結果を置きたいのでしょうか?
こちらなら単純にシートオブジェクトのCellsもしくはRangeで書き込めます。

> あと、VLOOPUPを使ったとき参照先が空白だと"0"が表示されます。
> これを空白にするにはどうすればいいですか

セルの式に=IF(Vlookup(〜)="0","",Vlookup(〜))ではいけませんか?

投稿時間:2002/11/13(Wed) 21:33
投稿者名:まるふ
Eメール:
URL :
タイトル:
Re^2: 形式を指定して貼り付け→値、をVBから操作したい
言葉足らずですいません、上のは自己解決しました。
例えば =vlookup(〜) の結果が"abc"だったら、そのセルには"abc"という文字列を・・・
っていうことでした。PasteSpecialを使ったらできました。


> > あと、VLOOPUPを使ったとき参照先が空白だと"0"が表示されます。
こっちは参照先が"0"でない保証がないんで
> セルの式に=IF(Vlookup(〜)="0","",Vlookup(〜))ではいけませんか?
ではだめなんですよね。
いいアイディアがあったら教えてください。

投稿時間:2002/11/14(Thu) 10:32
投稿者名:A221
Eメール:
URL :
タイトル:
Re^3: 形式を指定して貼り付け→値、をVBから操作したい
>こっちは参照先が"0"でない保証がないんで

当初のが記述ミスで="0"を判定していますが、参照先が空白のときは下記で空白になりました。
=IF(VLOOKUP(A2,F1:G8,2,FALSE)="","",VLOOKUP(A2,F1:G8,2,FALSE))

これにORで条件を追加すればよいのでは?
=IF(OR(VLOOKUP(A2,F1:G8,2,FALSE)="",VLOOKUP(A2,F1:G8,2,FALSE)="0"),"",VLOOKUP(A2,F1:G8,2,FALSE))