Hola
Este scrip alguna vez propuesto en el foro por Oscar te servira
OLEObject excel
Integer li_RetValue, li_rtn
Boolean lb_sheet_rtn
Long ll_cnt
excel = create OLEObject
li_rtn = excel.ConnectToNewObject("excel.application")
IF li_rtn <> 0 THEN
MessageBox('Excel error','No puede conectarse a Excel')
DESTROY excel
RETURN 0
END IF
excel.WorkBooks.Open( "c:\miarchivo.xls" )
excel.Application.Visible = false
excel.windowstate = 2 // 1 : Normal, 2 : Minimize, 3 : Maximize
lb_sheet_rtn = excel.worksheets(2).Activate
excel.Worksheets(2).Range("A1:E5000").Copy // copiar al clipboard
//Copiar desde la segunda fila de Excel
ll_cnt = dw_1.importclipboard(2)
IF ll_cnt <= 1 THEN
Messagebox("Info", "No se encontró")
END IF
excel.Worksheets(2).Range("A10000:A10000").Copy //reset clipboard
excel.Application.Quit
excel.DisConnectObject()
DESTROY excel
//-------------------Fin-------------------
Nota: Como habrás observado, sólo debes especificar el número de hoja en todos los lugares donde dice:
excel.Worksheets(2)....
O si prefieres, puedes escribir el nombre de la hoja, empleando comillas, por ejemplo:
excel.Worksheets( 'Aire Acondicionado' )....
Un saludo.