ouvrir un classeur à partir d'un autre

sirine

XLDnaute Nouveau
Bonsoir à tous,

J'ai un petit souci. En fait, je vais ouvrir un fichier à partir d'un classeur et qui appartiennet au meme répertoire et ils ont une partie dans leur nom en commun.
exemple:
1) nom du mon classeur:REF_LILLE_150214
2) et le com du fichier à ouvrir a le nom: réferentiel_LILLE_150214

comment je peux ouvrir le 2 classuer à partir de 1 ??
est ce que vous pouvez m'aider svp,
merci,
 

Staple1600

XLDnaute Barbatruc
Re : ouvrir un classeur à partir d'un autre

Bonsoir à tous


sirine
Il n'est pas forcément utile de doublonner les fils pour une même question
Un simple up dans le premier fil suffit en général
https://www.excel-downloads.com/threads/copier-coller-dun-classeur-a-un-autre.224385/

Pour ta question, as-tu regardé du côté de l'opérateur : Like

PS: Il est également de coutume de prévenir quand on pose sa question sur plusieurs forums.
(en mettant un lien vers l'autre forum)
 

sirine

XLDnaute Nouveau
Re : ouvrir un classeur à partir d'un autre

slt, ah ok je redouble pas ma question :)
Pour votre réponse , oui je le connais très bien l'opérateur "LIKE" mais j'ai pas compris qu"est ce que vous voulez dire?
Merci de m'explique un peu comment,
 

Staple1600

XLDnaute Barbatruc
Re : ouvrir un classeur à partir d'un autre

Re

A la relecture, je pencherai finalement pour Instr

Voir ci-dessous ce petit exemple illustratif
Code:
Function CompareN(a$, b$)
If InStr(a, Mid(b, 5, 9 ^ 9)) > 0 Then
CompareN = MsgBox("Test OK")
Else
CompareN = MsgBox("Test Pas OK")
End If
End Function
Code:
Sub test()
CompareN "réferentiel_LILLE_150214", "REF_LILLE_150214"
CompareN "TOTO", "REF_LILLE_150214"
End Sub

NB: Il faudrait ensuite passer à une boucle qui parcoure les classeurs de ton répertoire en utilisant le même principe que l'exemple ci-dessus
Tu trouveras de nombreux exemples de code VBA pour faire cela avec Dir dans les archives du forum, accessibles en cliquant sur le loupe en haut à droite.
 

Staple1600

XLDnaute Barbatruc
Re : ouvrir un classeur à partir d'un autre

Re


Ceci devrait faire l'affaire
(test OK sur mon PC)

Code VBA:
Sub b()
strPath = "C:\TEMP" 'adapter ici le nom du répertoire de recherche
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFso.GetFolder(strPath)
For Each objFile In objFolder.Files
If InStr(objFile.Name, "LILLE_150214") > 0 Then
Workbooks.Open (objFile.Path)
Else
MsgBox "Fichier non trouvé!", vbCritical, "Résultat Recherche"
Exit Sub
End If
Next
End Sub
 
Dernière édition:

sirine

XLDnaute Nouveau
Re : ouvrir un classeur à partir d'un autre

Merci pour votre réponse, oui ça marche mais le problème c'est que je veux un programme automatique qui marcha sur plusieurs fichier en plus certains champs dans les noms vont être modifiés d'un fichier à une autre par exemple la date et le lieu.
merci,
 

sirine

XLDnaute Nouveau
Re : ouvrir un classeur à partir d'un autre

Merci c'est résolu, voila la réponse qui m'a donné un participant dans un autre forum
Public wb1 As Workbook

Sub Ouvrir()

chemin = ActiveWorkbook.Path

If Right(chemin, 1) <> "\" Then chemin = chemin & "\"

nom1 = ActiveWorkbook.Name

nom1 = Mid(nom1, 4) 'Pour supprimer les 3 premiers caracteres

nom2 = chemin & "réferentiel" & nom1

Set wb1 = Workbooks.Open(nom2)


End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 520
Messages
2 089 298
Membres
104 092
dernier inscrit
karbone57