【VBA】楽なコピペをめざして ~セル結合へのテキスト情報入力~
どうも、バグです。 今回、なぜかVBAのものが完成してたので、備忘録として記事を書きます。
目的
週末にエクセルをイジる機会があったんですが、コピペをした際にエラーではじかれました。 はい、皆さんダイスキ、セル結合です。 ……えっ、一行ごとにセル結合しているの? いちいち皆、解除しながら作業しているの?めんどくない? という思いもあって、タイミングよく以下のTogetterも公開されて、「やってみるしかないよな~」という気持ちで作成。 VBAerなら、セル範囲の指定が面白いと思うのでぜひともおすすめです。
ワクワクV036回目レンジのグループと組み合わせ方(ほえほえ@hoehoe1234さんまとめ) togetter.com
なので、今回のマクロは、「複数のセル結合している範囲に対して、コピーしてきたテキスト情報を出力、再結合」が目的となってます。
環境
Office365
処理概要
処理概要フロー
1. クリップボードからテキスト情報を配列で取得
2. エラー判定(選択範囲より大きいテキスト情報を格納していないかチェック)
3. 入力対象のセルの結合解除、テキスト入力、再結合
動作イメージ
動作としては、以下の通りとなります。
①結合セルを選択し、マクロ登録したボタンをクリック!
②コピーしていたテキスト情報が、結合セルの中に入力されます。なおかつ、結合もそのままです。
③もし、コピーしたテキストが、選択範囲よりも大きい場合
④下の画面のようにエラーを返します。
ソース
今後の課題
……ソースの乗っけ方わかりません……? なんかコメントが外れたりしてます???
なんか……もっと勉強してきます。
後、VBAに関しては、このソース、 テキスト情報をコピーしないとエラー停止してしまうので、そこは大きな課題ですね。
あと、Undo機能をちゃんと搭載できれば、普通に [Ctrl] + [V] で結合セルか判断して実行できるので有益なんだけどな(´・ω・`)
このブログは後編みたいな形で一応の解説をつけるつもりです。 もし、質問があればコメントいただけると幸いです。(文章読みづらいでも可)