Para recorrer un excel que ya tienes abierto lo haces en el worksheet,
por ejemplo
For x As Integer = 1 To worksheet.UsedRange.Rows.Count
...
.
Next
---
Para validar algun valor podrias hacerlo asi
If worksheet.Cells(x, 2).Value2.ToString.Contains("Total") Then ...
---
Para asignarle un valor a una celda en especifico
worksheet.Cells(x, col).Value2 = "Nuevo Texto"
a este campo le puedes asignar cualquier tipo de dato.
---
Tambien puedes asignar formulas o cualquier cosa que excel te permita, como
worksheet.Cells(x, col).Value2 = "=IF(ISERROR(" & Formx & "),0," & Formx & ")"
---
Puedes aplicarle formatos a tu hoja de excel para que tenga una mejor apariencia
Código:
Dim vFormato As Microsoft.Office.Interop.Excel.XlRangeAutoFormat
vFormato = XlRangeAutoFormat.xlRangeAutoFormatClassic1
worksheet.Range(worksheet.Cells(1, 1), worksheet.Cells(worksheet.UsedRange.Rows.Count, worksheet.UsedRange.Columns.Count)).AutoFormat(vFormato)
.
...
...
en este caso se le aplico el formado o diseño "xlRangeAutoFormatClassic1"
---
Darle formato solo al header
Código:
worksheet.Range(worksheet.Cells(1, 1), worksheet.Cells(1, worksheet.UsedRange.Columns.Count)).Font.Bold = True
worksheet.Range(worksheet.Cells(1, 1), worksheet.Cells(1, worksheet.UsedRange.Columns.Count)).Font.Size = 12
worksheet.Range(worksheet.Cells(1, 1), worksheet.Cells(1, worksheet.UsedRange.Columns.Count)).Font.Italic = True
.
...
...
---
Si queremos aplicarle formato a la linea de subtotales, pero no sabemos en cual linea estan, recorremos la hoja y aplicamos el formato a la linea correspondiente
Código:
For x As Integer = 1 To worksheet.UsedRange.Rows.Count
'bold a los subtotales
If worksheet.Cells(x, 2).Value2.ToString.Contains("Total") Or _
worksheet.Cells(x, 2).Value2.ToString.Contains("Grand") Then
worksheet.Range(worksheet.Cells(x, 1), worksheet.Cells(x, worksheet.UsedRange.Columns.Count)).Font.Bold = True
End If
Next
.
...
...
----
creo que aqui te deje bastante ejemplos, espero que te sirvan