Je m'explique. Je cherche à mettre à jour un fichier. Pour cela, je veux ouvrir un fichier dans lequel il y a les données sources pour la mise à jour. J'aimerais que le classeur source soit affecté dans une variable pour éviter de le réécrire à chaque fois mais je bloque sur la ligne ci-dessus.
Voici mon code dans son ensemble :
Public FeuilleAppliSource As Worksheet, FichierAppliSource As Workbook 'nom de la feuille et du fichier sources
Sub OuvertureFichierSource()
Dim SCheminFichier As String
'ouvrir le fichier source
SCheminFichier = Application.GetOpenFilename()
If SCheminFichier = "" Then
Exit Sub
Else
SCheminFichier = Dir(SCheminFichier)
FichierAppliSource = Application.Workbooks(SCheminFichier)
End If
FichierAppliSource.Worksheets("Résultat" ).Name = SFeuilleTravail ' SFeuilleTravail est un string qui vaut "Mis à jour"
Set FeuilleAppliSource = FichierAppliSource.Worksheets(SFeuilleTravail)
FeuilleAppliSource.Copy After:=FeuilleAppliMAJ
End Sub
j'ai essayé aussi ces deux écritures à la place de "FichierAppliSource = Application.Workbooks(SCheminFichier)" :
' FichierAppliSource = Workbooks(ActiveWorkbook.Name)
' SCheminFichier = Left(Dir(SCheminFichier), InStr(1, Dir(SCheminFichier), ".", 1) - 1).
'ouvrir le fichier source
SCheminFichier = Application.GetOpenFilename("Classeur Excel (*.xls), *.xls")
If SCheminFichier = "" Then
Exit Sub
Else
Set FichierAppliSource = Workbooks.Open(Filename:=SCheminFichier)
End If
cela a l'air de marché. Par contre, je me retrouve avec un message d'erreur '-2147021892 (80070bbc)' qui est lié à un problème avec le fichier. Comment puis-je faire pour éviter ce message d'erreur.
12 déc. 2011 à 17:04
cela a l'air de marché. Par contre, je me retrouve avec un message d'erreur '-2147021892 (80070bbc)' qui est lié à un problème avec le fichier. Comment puis-je faire pour éviter ce message d'erreur.
Aidez-moi, je n'y arriverais jamais !