• ベストアンサー

エクセルで対応する行に文字列を入れたい

2列に渡って対応するデータが入力されているのですが,それぞれがずれています。それを一度に一致させる方法はありませんでしょうか。言葉で説明すると長くなりそうなので,添付画像に行ないたいことを記してみました。ご覧いただくと理解しやすいかと思います。情報をいただければ幸いです。

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

  • ベストアンサー
  • hijirisei
  • ベストアンサー率34% (17/49)
回答No.2

作曲者をA列、曲名がB列にはいっているとします。 データはともに2行目から発生しているとします。 どこかあいている列(この場合C列)の2行目に、 =IF(B2="",A2,C1) と入力して、下の行に向かってコピーして貼り付けます。  ※曲名(B2)がはいっていなければ、作曲者(A2)を表示する。   曲名がない場合、上の行の内容を表示する。 そうすると、お望みの結果がでると思います。 このままでは、関数のみとなってしまっているので、C列をコピーして、右クリック「形式を指定して貼り付け」→「値のみ」を選択すれば、普通に入力した状態になります。 あとは必要に応じて、貼り付けたい個所にコピーなり移動してください。

Jerry_info_svs
質問者

お礼

うまくできました。皆さん,ありがとうございました。

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

例えばA2セルにモーツアルト、また、B3セルには交響曲第39番のようにあり下方にデータあるとします。 D2セルには次の式を入力します。 =IF(A2<>"",A2,IF(B2<>"",D1,"")) E2セルには次の式を入力します。 =IF(B2="","",B2) D2セルとE2セルを範囲として選択したのちに下方にオートフィルドラッグします。 これで完成ですがA列やB列が消されますとデータはなくなってしまいますので最後にD列とE列を選択してコピーし、A1セルをアクティブセルにしてから「形式を選択して貼り付け」で「値」にチェックをして貼り付けを行います。その後にDやE列を消してもよいでしょう。

Jerry_info_svs
質問者

お礼

うまくできました。皆さん,ありがとうございました。

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

たとえば、最初のモーツァルトの文字がA2のセルにあるとして、C2のセルに以下の数式を入れ、下へコピーします。 =IF(A2<>"",A2,C1) C2から最終行までをコピーして、A2で形式を選択して貼りつけ→値でOKします。

Jerry_info_svs
質問者

お礼

うまくできました。皆さん,ありがとうございました。

関連するQ&A