こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

MID関数で、「0」を一文字目として認識させたい

Excel2002で、住所録から封筒を印刷するファイルを作りました。
住所録シートの7桁の郵便番号セルから一文字ずつ取出して
印刷シートの各セルに収めるよう下記の関数を入れています。

=MID(VALUE(VLOOKUP("●",住所録データ範囲,5,TRUE)),1,1)

通常は問題無いのですが、「0」から始まる郵便番号の時は
MID関数が「0」を1文字目と認識してくれず、2文字目が
1番先頭のセルに入ってしまいます。
(住所録シートに入っている郵便番号は「'」で文字列認識させています)

何か良い解決方法はありますでしょうか?
宜しくお願い致します。

投稿日時 - 2009-04-16 10:26:21

QNo.4883380

困ってます

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

MID関数が「0」を1文字目と認識してくれないなんてことはないはずです。
そうでなくてVALUEで数値化したから先頭の0が消えただけなのでは?
それから"●"は具体的には何かな?それがわからないからVLOOKUPでなんで引数にTRUEを指定しているのかわかりません。

投稿日時 - 2009-04-16 10:35:04

お礼

VALUEを外したらうまくいきました!
稚拙なマクロで、住所録シートで印刷したい住所行のA列をダブルクリックすると「●」が入り
それが印刷シートに反映される仕組みにしています。
検索の型は、どこかで「省略すればTRUEになる」と聞いたことがあったので
特に深く考えずに入れていました。
文字列や完全一致の場合は「FALSE」にすべきなんですね。勉強不足ですみません。
もっと良いやり方があるかもしれませんが、なにぶんこんな調子で
手探り状態でやっているもので…。
助かりました。有難うございました。

投稿日時 - 2009-04-16 14:55:20

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

VALUEをやめればいいだけです。
あと、VLOOKUPの数にTRUEを指定していますが、
何か特別の意味があります?
FALSEではだめ?

投稿日時 - 2009-04-16 10:54:52

お礼

VALUEを外したらうまくいきました!
検索の型は、どこかで「省略すればTRUEになる」と聞いたことがあったので
特に深く考えずに入れていました。
文字列や完全一致の場合は「FALSE」にすべきなんですね。勉強不足ですみません。
もっと良いやり方があるかもしれませんが、なにぶんこんな調子で
手探り状態でやっているもので…。
助かりました。有難うございました。

投稿日時 - 2009-04-16 14:56:25

あなたにオススメの質問