- ベストアンサー
関数でセルを結合させる方法
お世話になってます セルAに【みかん】と入力されるとB,C,Dのセルが結合されるようになる方法はありますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
「結合」の意味が「3つのセルを結合して1つのマージセルにする」ということであるなら「それは関数ではできません」が回答になります。 (3つのセルの文字列を「連結」することならば#01さんの回答のようにできますが…) ですから「結合」の定義をもう少し明確にしてください。 なおVBAなら「3つのセルを結合して1つのマージセルにする」ことは簡単にできます。ただしVBAでマクロを書くには条件が足りません。 具体的には >空白の状態のB1,C1,D1が空白のまま結合 とありますが、B1、C1、D1のいずれかに値が入っていたらどうすればよいですか? 更にB1だけに値があるときとD1だけに値があるときでは、どう違いがありますか。(普通値が入力されているセルを結合するとき先頭の値だけが残って、その他のセルの値は消えてしまうのですが、今回の質問も同様の動きを期待されていますか?) また値が入っているセルを結合すると「警告メッセージ」が出るのがエクセルの仕様ですが、このメッセージは出しても良いですか? それとも出さずに結合して良いですか? このようなことを明確にしていただかないとマクロを書いても「意図するものと違う」と言われかねないので、もしマクロを希望するなら条件もきちんと提示してください。 最後に「みかんと入力したら」は「例えば」ではないかと思います 実際には「みかん」だけですまないなら、マクロを書いても後から修正が必要になりますよ。ご自身でマクロを修正できるなら良いのですが、そうではないならあまり簡略化した例を示すのは後で苦労するかもしれませんね。
その他の回答 (2)
- Misaki_tan
- ベストアンサー率31% (40/126)
まずこれは基本的な事なのですが、”マクロの記録”を使って、”セルの結合”を手動で実行した場合の結果を見てみましょう。 どのような関数が使用されているか、どのように組まれているかが分かります。 それをIF分の組み合わせればきっと大丈夫かと思います。 試していないので申し訳ありませんが、、、参考まで。
- Hachi5592
- ベストアンサー率36% (252/698)
結果をセルE1に入れるとするとE1に =IF(A1="みかん",CONCATENATE(B1,C1,D1),"") こうするとA1に"みかん"といれるとE1にはB1,C1,D1のセルが結合されてE1に入ります。 またE1はこのようにしてもいいです。 =IF(A1="みかん",b1&c1&d1,"")
お礼
ありがとうございます。 でもEのセルは印刷範囲外です。 情報が足りなかったせいですいません。 詳細に書くと、A1にみかんと入力すると空白の状態のB1,C1,D1が空白のまま結合できるようにしたいんです。