А значения, вокруг которых нужно добавить, всегда находятся в столбце "H"? Если так, то можно их забрать в массив, затем разрисовать лист как нужно и добавить значения. А если не так, то нужно просто каждый раз указывать в каком столбце значения.
Что касается объединения ячеек, то вот:
Код:
procedure TfrmGeneral.btnExcelClick(Sender: TObject);
var
lcid: Integer;
N: Word;
Ch: Char;
begin
lcid := LOCALE_USER_DEFAULT;
with Excel do
begin
Workbooks.Add('', lcid);
for N := 65 to 66 do // A = 65, B = 66 .. Z = 90
begin
Ch := Char(N);
Range[Ch + '1', Ch + '4'].Merge(0);
end;
Visible[lcid] := True;
end;
end;
Может натолкнет на мысль какую-нибудь тебя...