• ベストアンサー

EXCEL VBA:結合セルのデータを取り出すには?

結合セルに書き込まれている文字列を取得したいのですが、 何か良い方法はありますか? 以下のような方法をとってみたのですが、 イマイチうまくいきませんでした。。。 Dim iRow as Integer Dim strData as String iRow = 1 strData = Cells(iRow, 1).MergeArea.Value どなたかご教授頂けないでしょうか? 何卒よろしくお願いします。

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

  • ベストアンサー
  • redfox63
  • ベストアンサー率71% (1325/1856)
回答No.1

MergeAreaで取得したセルの位置を特定しないといけませんね 通常は結合セルの先頭のみのデータが対象でしょうから strData = Cells(iRow,i).MergeArea( 1, 1).Value といった具合でしょう iRowの更新は iRow = iRow + Cells(iRow,i).MergeArea.Rows.Count といった具合でしょう

pureone
質問者

お礼

なるほど!この書式で取得できるんですね! ありがとうございました!

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

適当に、複数箇所のセル結合してあるセル範囲をカバーして、範囲指定し、下記を実行してみてください。 Sub test02() Dim cl As Range For Each cl In Selection If cl.MergeCells = True Then If cl.Value <> "" Then MsgBox cl.Address & " " & cl.Value End If End If Next End Sub で無駄なくつかめると思います。

pureone
質問者

お礼

ご回答ありがとうございます。 ちょうど、結合セルのアドレス全てを配列に格納しようかと 考えておりましたので、是非この方法を使わせて頂きます!

関連するQ&A