rotary:
Here's a routine I used to take info from a grid-like set of textboxes in a VB form and drop it into Excel (which is not what you're trying to do). The second part of the code uses the same variant to collect the Excel cell data and send it back again--this may get you on the right track. The comments should clue you enough as to what's going on. . .
[tt]
Private Sub mnuTransfer_Click()
On Error GoTo ExportToExcel_Err
Dim r%, c%, k%
Dim parrGridValues()
Dim PrintNow%
Dim SaveName$
'Excel object variables
Dim objXLApp As Excel.Application
Dim objXLWkb As Excel.Workbook, _
objXLWksht As Excel.Worksheet, rngXLCurrent As Excel.Range
' Me.Hide
'Get the textbox values
FillArray parrGridValues()
Set objXLApp = New Excel.Application
With objXLApp
.Visible = True
.WindowState = xlMinimized
.ScreenUpdating = False
End With
Set objXLWkb = objXLApp.Workbooks.Add
Set objXLWksht = objXLWkb.Worksheets(1)
With objXLWksht
.Name = "NewBudget"
.Cells(1, 1).Value = "July"
.Cells(1, 2).Value = "August"
.Cells(1, 3).Value = "September"
.Cells(1, 4).Value = "October"
.Cells(1, 5).Value = "November"
.Cells(1, 5).Value = "December"
.Cells(1, 6).Value = "TOTALS"
k% = 0
For r% = 2 To 6
For c% = 1 To 5
objXLWksht.Cells(r%, c%).Value = parrGridValues(k%)
If k% = 35 Then Exit For
k% = k% + 1
Next c%
Next r%
'Sum across rows at right
Range("F2"

.Select
ActiveCell.FormulaR1C1 = "=SUM(RC[-5]:RC[-1])"
Range("F2"

.Select
Selection.Copy Destination:=Range("F3:F6"

'Sum down columns at bottom
Range("A7"

.Select
ActiveCell.FormulaR1C1 = "=SUM(R[-6]C:R[-1]C)"
Range("A7"

.Select
Selection.Copy Destination:=Range("B7:F7"
End With
'Use Sums back in VB "Grid"
ReDim parrGridValues(10)
k% = 0
c% = 6
'Fill array with Row Sums
For r% = 2 To 6
parrGridValues(k%) = objXLWksht.Cells(r%, c%).Value
k% = k% + 1
Next r%
r% = 7
'Fill array with Column Sums
For c% = 1 To 6
parrGridValues(k%) = objXLWksht.Cells(r%, c%).Value
k% = k% + 1
Next c%
'Insert Row Sums into txtRowSum()
'Use c% for the txtRowSum index down right column
k% = 0
For c% = 0 To 4
txtRowSum(c%).Text = parrGridValues(k%)
k% = k% + 1
Next c%
'Use r% for txtEntry index across bottom row
'k% continues from last index value
For r% = 0 To 5
txtColSum(r%).Text = parrGridValues(k%)
k% = k% + 1
Next r%
'Insert Column Sums into txtEntry()
'Format the sheet with borders
Set rngXLCurrent = objXLWksht.Range("a1"

.CurrentRegion
With rngXLCurrent
.Style = "Currency"
.EntireColumn.AutoFit
.BorderAround xlDouble, xlThick
.Borders(xlInsideVertical).LineStyle = xlContinuous
End With
With Range("A1:F1"

.Font.Bold = True
With .Interior
.ColorIndex = 15
.Pattern = xlSolid
End With
End With
PrintNow% = MsgBox("Do you want to print the report now?", vbYesNo, "Excel Report"
If PrintNow% = vbYes Then
objXLWksht.PrintOut
End If
' Save the spreadsheet
SaveName$ = "XLExport.xlx"
objXLApp.DisplayAlerts = False
objXLWksht.SaveAs (SaveName$)
' Quit Excel
objXLApp.Quit
'Format all txtEntry.text values as currency $0.00
FormatTxtEntry
Me.Show
ExportToExcel_Exit:
objXLApp.DisplayAlerts = True
objXLApp.ScreenUpdating = True
'Empty Object Variables
Set rngXLCurrent = Nothing
Set objXLWksht = Nothing
Set objXLWkb = Nothing
Set objXLApp = Nothing
Exit Sub
ExportToExcel_Err:
MsgBox Err.Number & ": " & Err.Description
GoTo ExportToExcel_Exit
[/tt]