- ベストアンサー
エクセルで宅急便送り状に印字する方法
- エクセルで宅急便の送り状に印字するために、VLLOKUP関数を使用して別シートのデータを呼び出す方法を教えてください。また、郵便番号をレイアウトに沿って入力したいが、方法が分からないとのことです。
- 他の住所や電話番号、得意先名はVLLOKUP関数を使用して作成できたが、7桁の郵便番号のうち任意の桁数を取り出す方法が分からないとのことです。どのようにすれば良いでしょうか。
- 最終的には、7桁の郵便番号を分割して入力するか、別の方法でレイアウトに入力したいと考えています。しかし、具体的な方法がわからないため、助言をいただきたいです。
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
回答者1さんの言う通りに、 MID関数を使えば文字列中の文字を抽出できます。 1桁目 =IF(D20="","",MID(VLOOKUP(C20,LIST!$A$1:$I$50,4,FALSE),1,1)) 2桁目 =IF(D20="","",MID(VLOOKUP(C20,LIST!$A$1:$I$50,4,FALSE),2,1)) 3桁目 =IF(D20="","",MID(VLOOKUP(C20,LIST!$A$1:$I$50,4,FALSE),3,1)) のようにされて抽出されてはどうですか?
その他の回答 (6)
- kuma310min
- ベストアンサー率40% (212/518)
考え方は、No.5さんの通りでOKだと思います。 1桁目 =IF(C$20="","",MID(VLOOKUP(C$20,LIST!$A$1:$I$50,2,FALSE),1,1)) 2桁目 =IF(C$20="","",MID(VLOOKUP(C$20,LIST!$A$1:$I$50,2,FALSE),2,1)) ・最初のD20→C$20 (C20に得意先コード入力の場合) ・FALSEの左が、4→2 (B列に郵便番号が入っているとの事なので) が修正されるくらいです。 郵便番号が数値形式ではNGかと思いましたが、とりあえずOKみたいです。 (2007の場合。2003でNGならば、セルの書式設定で文字列へ。) あとは、郵便番号の行はセル幅などで調整。 住所の行は、セルの結合などで調整するしかないでしょう。
- KURUMITO
- ベストアンサー率42% (1835/4283)
回答No2です。 A2セルに1234567とある数値を例えばB2セルからG2セルに1個づつ並べるのでしたら次の式をB2セルに入力してG2セルまでドラッグコピーすればよいでしょう。 =MID($A2,COLUMN(A1),1) 数字の間隔はセル幅を適当に変えることで対応できますね。
補足
再度のご回答誠にありがとうございます。 送り状というシ-トに郵便番号を入れるレイアウトのセルが7つ あります。 別シ-ト(LIST)というシ-トにA列に得意先コ-ド、B列 に郵便番号が数値7桁で入っております。 送り状シ-ト(送り状のレイアウトがあるシ-トです)の例えば B20に得意先コ-ドを入力するとLISTシ-トの郵便番号を 7つのセルに順番に表示させたいという事なのです。 説明分が稚拙で分かりにくく申し訳ございません。
- m_and_dmp
- ベストアンサー率54% (987/1817)
どのようにダメなのかわからないので的確なアドバイスは難しいです。 (1)VLOOKUP 関数で7桁の郵便番号をレイアウトシートに持ってくることができないのか、 (2)持ってくることができるが、レイアウト枠の中にぴったり入れることができないのか、 (3)なぜ、任意の桁数を取り出さなければならないのか (2)の場合は、7桁の数字をひとつのセルに入力した場合、数字の間隔を調節してレイアウト枠にぴったりになるようにすることは簡単にはできません。 表示形式を 000” ”0000 にすると、123 4567 と表示されます。 0” ”0” ”0” ”0” ”0” ”0” ”0 にすると 1 2 3 4 5 6 7 と表示されます。 ” ” の中はスペースです。スペースの数を増やせば数字の間隔は広がります。 この表示形式とフォントのサイズをうまく利用してレイアウト枠の中にぴったり配置することができるかもしれません。 以下は私がやっている方法ですが、 レイアウト枠の上にレイアウト枠と同じくらいの大きさのテキストボックスを作成し、そのテキストボックスにセルの内容を表示させる方法があります。 レイアウトシートの、レイアウト枠に邪魔にならないところにVLOOKUPで郵便番号を持ってきておきます。そのセルを「セルA」とします。 おなじく、邪魔にならないところのもうひとつのセルを「セルB」とします。 セルB = JIS(セルA) として、数字を文字列に変換しておきます。 テキストボックスを作成したら、その中に文字を打ち込まずに、 アドレスバーに、=[セルBをマウスで参照] と打ち込むとセルBの内容がテキストボックスに表示されます。 テキストボックスの書式設定で、横位置を均等割り付けにします。 テキストボックスを郵便番号レイアウトボックスの上に持ってきて、横方向のサイズを調節すると、7桁の数字をレイアウト枠にぴったりと配置することができます。 調節が終わったらテキストボックスの枠線の色を「なし」にします。
お礼
ご回答ありがとうございます。 (1)につきましては送り状用紙では郵便番号の枠が別々になっております ので7桁を全部に出すのはレイアウトに合わないのです。 (2)につきましたはその通りです。 (3)につきましてはなぜ任意って郵便番号を1つずつ所定の枠に納めない とだめなので。 テキストボックスではちょっと出来ないです。申し訳ございません。
- kuma310min
- ベストアンサー率40% (212/518)
=LEFT(A1,3) =RIGHT(A1,4) で、左3桁・右4桁に分離する方法ではダメ?
お礼
ご回答ありがとうございます。 LEFT関数やRIGHT関数は存じております。 宅急便の送り状って郵便番号の枠が1つずつ分かれて いますのでその方法では無理なんです。すみません。
- KURUMITO
- ベストアンサー率42% (1835/4283)
住所がレアウトのシートに表示されるが郵便番号ができないといっていますが郵便番号は住所と同じセルになっているのでできないのか肝心のところがよくわかりません。LISTのシートでは住所と郵便番号が別々の列になっているのでしたら問題はないでしょうし、いったい郵便番号をどのようにしたいのか具体的に示していただけませんか?
お礼
ご回答ありがとうございました。 郵便番号と住所等は当然ながら別々のセルに 納まっております。 例えばA2のセルに1234567と7桁の 数値が入っておりますので1つずつ選び目的 の場所に表示させたいのです。
- maiko0318
- ベストアンサー率21% (1483/6969)
=MID(A1,1,1) A1の1文字目から1文字 =MID(A1,2,1) A1の2文字目から1文字 =MID(A1,3,1) A1の3文字目から1文字 =MID(A1,4,1) A1の4文字目から1文字 =MID(A1,5,1) A1の5文字目から1文字
お礼
早速のご回答誠にありがとうございます。 回答No.5の方の通りやってみましたが だめでした。
お礼
ご回答ありがとうございました。 回答NO.1様に付け加えて頂きまして実際の 関数で示して頂きましたが駄目でした。 入力した式は正しくありませんとエラ-表示される のですがなぜなのでしょうか? 申し訳ありません。
補足
すみませんでした。再度関数式を入力したら出来ました。 本当に助かりました。この度は本当にありがとうござい ました。感謝致します。