La Web del Programador: Comunidad de Programadores
 
    Pregunta:  47842 - COMO ABRIR UN LIBRO DE EXCEL
Autor:  Thelma ortiz
Como abro un libro de excel sin tener que estar eliminando el que ya tengo...(Supongo que es con un contador pero como le hago???)
Cada vez que le doy a mi programa que me habra un excel me pregunta si quiero reiscribie el que tengo, como le hago para que no lo haga.

\'Iniciar un nuevo libro en Microsoft Excel.
oExcel = CreateObject(\"Excel.Application\")
oBook = oExcel.Workbooks.Add

\'Agregar datos a las celdas de la primera hoja de cálculo del libro nuevo.
oSheet = oBook.Worksheets(1)

\'Guardar el libro y cerrar Excel.
oBook.SaveAs(sSampleFolder & \"c:\\Book1.xls\")
oSheet = Nothing
oBook = Nothing
oExcel.Quit()
oExcel = Nothing
GC.Collect()

  Respuesta:  Eider Mauricio Aristizábal Erazo
'Listo niña, utiliza una funcion que te retorne un nombre de archivo que
'no esté en uso pej. nextName así quedaría tu código

\'Iniciar un nuevo libro en Microsoft Excel.
oExcel = CreateObject(\"Excel.Application\")
oBook = oExcel.Workbooks.Add

\'Agregar datos a las celdas de la primera hoja de cálculo del libro nuevo.
oSheet = oBook.Worksheets(1)

\'Guardar el libro y cerrar Excel.
oBook.SaveAs(sSampleFolder & nextName) 'AQUI LA DIFERENCIA
oSheet = Nothing
oBook = Nothing
oExcel.Quit()
oExcel = Nothing
GC.Collect()

Private Function nextName() As String
Dim contador As Integer
contador = 1
Do
If (Dir("c:\Book" + Trim(Str(contador)) + ".xls") = "") Then
Exit Do
End If
contador = contador + 1
Loop While (True)

Return "c:\Book" + Trim(Str(contador)) + ".xls"
End Function

'Espero te sirva
'Saludos desde Cali - Colombia