' ** Référence : Microsoft Excel 11.0 Library Objects ou équivalent
Public Function RenommeFeuilleExcel(ByVal sMonBook As String, _
ByVal sNomFeuilleARemplacer As String, _
ByVal sNouveauNomFeuille As String) As Boolean
If IsExist(sMonBook) Then
Dim xlApp As Excel.Application
Dim xlBook As Workbook
Dim i As Integer
Dim bFlag As Boolean
Set xlApp = CreateObject("Excel.Application")
Set xlBook = xlApp.Workbooks.Open(sMonBook)
RenommeFeuilleExcel = False
For i = 1 To xlBook.Sheets.Count
If xlBook.Sheets(i).Name = sNomFeuilleARemplacer Then bFlag = True: Exit For
Next i
If bFlag Then
Sheets(sNomFeuilleARemplacer).Name = sNouveauNomFeuille
RenommeFeuilleExcel = True
Else
MsgBox "Ce nom de feuille n'existe pas !", vbCritical
End If
xlBook.Close True
xlApp.Quit
Set xlBook = Nothing
Set xlApp = Nothing
Else
MsgBox "Le fichier n'existe pas, vérifier le chemin !", vbCritical
End If
End Function
Private Function IsExist(ByVal StrFileName As String) As Boolean
On Error GoTo Xe
Open StrFileName For Input As #1
Close #1
IsExist = True
Xi: Exit Function
Xe: 'MsgBox Err.Description, vbCritical
Resume Xi
End Function
Sub Exemple_Utilisation()
If RenommeFeuilleExcel("C:\Documents and Settings\<nom utilisateur>\Bureau\Test Chgt Nom Feuille.xls", _
"Feuil3", "Ma Feuille") Then
MsgBox "Le changement de nom est un succès !", vbInformation
Else
MsgBox "Le changement de nom est un échec !", vbCritical
End If
End Sub