• ベストアンサー

Excel名簿で住所欄のセル内文字列を連結する方法

以前に、逆の方法を教えて頂きました。 http://okwave.jp/qa/q7448197.html 逆に各セルの文字列を連結する方法を教えてください。 更に51-3 が、513に成らないようにする方法もあれば、教えてください。 Windows 8.1 とExcel2007/2003を使用しています。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

No2の回答の訂正です。 提示した数式では余計なハイフンなどが表示されてしまいますね。 C列からF列までに数字が入る条件なら、以下のような数式に訂正してください。 =A1&B1&TEXT(C1&"",IF(ISTEXT(B1),"@","-0"))&TEXT(D1&"",IF(ISTEXT(C1),"@","-0"))&TEXT(E1&"",IF(ISTEXT(D1),"@","-0"))&TEXT(F1&"",IF(ISTEXT(E1),"@","-0"))

ify620
質問者

お礼

ありがとうございます。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

最初に出てくる数字がC列以降で、F列までの間に数字(住所)が入力されているという条件なら以下の数式でご希望の表示ができます。 =A1&B1&C1&IF(ISTEXT(C1),D1,"-"&D1)&IF(ISTEXT(D1),E1,"-"&E1)&IF(ISTEXT(E1),F1,"-"&F1)

ify620
質問者

お礼

ありがとうございます。

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

セルの連結は、  =B2&C2&D2 のようにします。 51-3のケースについては、 セルF2 =A2&B2&C2&IF(AND(ISNUMBER(RIGHT(C2,1)*1),ISNUMBER(D2)),"-","")&D2&IF(AND(ISNUMBER(RIGHT(D2,1)*1),ISNUMBER(E2)),"-","")&E2 長い式になってしまいました。 C、D、E列に数字や「10-11」などがくるパターンを考えてみました。万能ではないはずですが。

ify620
質問者

お礼

ありがとうございます。 できました。 (*^_^*)/

関連するQ&A

専門家に質問してみよう