Bonjour
J'ai encore une question vba
j'ai préparer ce code mais pas de solution exacte :
je m'explique :

-> classeur A (fermé) contient les données à mettre à jour (onglet fixe "Donnees").
-> calsseur B (ouvert) a un feuille ("Donnees") que je dois mettre a jour (mais le nom de la feuille doit rester le même). Pas "Donnees (x)"
bout de code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
Sub b()
Dim objSh, objFic, Fic2Open$, WBKSource As Workbook
Dim nom As String
Dim i As Integer
 
 
nom = "donnees"
Set objSh = CreateObject("Shell.Application")
MsgBox "Sélectionner le fichier dans le répertoire adéquat contenant la source données des communes (en XLS) "
Set objFic = objSh.BrowseForFolder(&H0&, "Sélectionner le fichier dans le répertoire adéquat", &H4000&)
Fic2Open = objFic.ParentFolder.ParseName(objFic.Title).Path & ""
Set WBKSource = Workbooks.Open(Fic2Open)
i = 1
If i = 1 Then
MsgBox "Effacement de l'ancienne fiche de données "
WBKSource.Sheets(nom).Copy Before:=ThisWorkbook.Sheets(nom)
MsgBox "Effacement de l'ancienne fiche de données "
 
Else: Sheets("donnees").Delete
End If
 
WBKSource.Close False
End Sub
J'ai peut être zapppé une étape....
Merci par avance