★ExcelVBA ~ セル結合されてしまった列名(=項目名)のセルアドレスと値を新規シートに転記する方法
  
※まだ書きかけです。すみません。
※間違ってたらすみません。
※メモ書きなので、自分でも意味不明な箇所も多いです。ごめんなさい。
  
  

結合(マージ)されたセルのうち、先頭のセルに「値」が格納されます。
また、Range.MergeAreaプロパティは、結合されたセル範囲(=Rangeオブジェクト)を返してくれます。
例えば、「A1~C1の3つのセルが結合されていれば」、イミディエイトでは以下のようになります。

? Range("A1").MergeArea.address(false,false)
A1:C1

? Range("B1").MergeArea.address(false,false)
A1:C1

? Range("C1").MergeArea.address(false,false)
A1:C1

上記のように、結合された範囲の最初のセルは、どのセルで調べても全部、
「結合範囲の」「先頭のセル」になります。

なので、この場合だと、
Range("××").MergeArea.address の値が、
全部「A1:C1」になり、
つまり、調べたセルのアドレスと、結合されたセル範囲の左半分(「:」よりも左)が一致すれば、
そのセルからが、「結合のスタート」ということになります。
(逆に言うと、左半分のアドレスが一致しないセルは結合のスタートのセルではない・・・、ということになります。)

そして、冒頭にも述べました通り、
「結合(マージ)されたセルのうち、先頭のセルに「値」が格納される」ということなので、
セルの値も同時にゲットできます。
その性質を利用します。