je désespère d'avoir une macro magique qui permet de croiser un fichier avec un autre automatiquement qq soit le nombre d'onglet et de lignes sur ceux ci
exemple
fichier où je souhaite rapporter les infos
OPERATION X
fichier base de données
REF13 en OS
souhait : simultation sur le doc
CROISEMENT...
à partir d'une case (ici E4 mais peut changer) déclencher une RecherchV qui rapporte l'info de la colonne C du fichier "REF13 en os" (qq soit le nbre d'onglets et le nobre de lignes du fichier REF13) : Croyez-vs que cela soit POSSIBLE?
l'exemple que je fourni ne traite que les 2premiers onglets mais ce fichier "base de données peut contenir en fin d'année des dizaines de feuilles et des milliers de lignes par feuilles)
ohlala désolée de choquer bruno
bientôt les vacances ?
moi petit scarabée d'excel et j'ai tjrs eu des "mégabalaises" qui oeuvraient à tte vitesse pour des choses que moi je trouvais compliquées mais pas eux
bienvenue dans mon monde (pour votre info je galère là-dessus depuis 2 ans et dans mon travail j'ai la pression pour accélérer ces traitement et pas d'aide car l'informatique estexternalisée...)
merci d'avoir lu cette demande quand même
2 ans ça aurait suffit pour apprendre vba... il fallait venir avant
Quel niveau avez-vous en vba, car plusieurs méthode son possibles. Donner des conseils, ou qq codes d'exemple c'est possible, mais il faudra les adapter.
Juste un code de base à adapter: il va chercher toutes les données de chaque onglet des fichiers d'un répertoire et les ajoute au fichier en cours.
ensuite, il reste pluqu'à créer un TCD et le tour est joué.
Code:
Sub RechercherFichiers()
Dim Rep As String
Dim wk As Workbook
Dim sh As Worksheet
Dim l As Long
l = 1
Rep = ThisWorkbook.Path & "\rep fichiers\"
s = Dir(Rep)
Do
Set wk = CreateObject(Rep & s)
For Each sh In wk.Worksheets
sh.Range("A1").CurrentRegion.Copy wkdest.Worksheets(1).Range("A" & l)
Next sh
'prochaine ligne où seront copiées les données
l = wkdest.[A1000000].End(xlUp).Row + 1
wk.Close savechanges:=False
s = Dir
Loop While s <> ""
End Sub
recoucou smotty
je suis inapte et compte sur votre aide à nouveau
comment dois-je enregistrer cette macro?
ça coince ici :
Set wk = CreateObject(Rep & s)
Juste un code de base à adapter: il va chercher toutes les données de chaque onglet des fichiers d'un répertoire et les ajoute au fichier en cours.
ensuite, il reste pluqu'à créer un TCD et le tour est joué.
Code:
Sub RechercherFichiers()
Dim Rep As String
Dim wk As Workbook
Dim sh As Worksheet
Dim l As Long
l = 1
Rep = ThisWorkbook.Path & "\rep fichiers\"
s = Dir(Rep)
Do
Set wk = CreateObject(Rep & s)
For Each sh In wk.Worksheets
sh.Range("A1").CurrentRegion.Copy wkdest.Worksheets(1).Range("A" & l)
Next sh
'prochaine ligne où seront copiées les données
l = wkdest.[A1000000].End(xlUp).Row + 1
wk.Close savechanges:=False
s = Dir
Loop While s <> ""
End Sub
Je suis désolé, je viens juste de voir votre message.
Si ça coince, c'est qu'il n'y a pas de fichier ou que le fichier n'est pas un fichier Excel.
Voici une petite modif qui teste si le fichier trouver est un fichier Excel:
Code:
[COLOR="red"]While s <> ""[/COLOR]
[COLOR="red"]if s like "*.xls" then[/COLOR]
Set wk = CreateObject(Rep & s)
For Each sh In wk.Worksheets
sh.Range("A1").CurrentRegion.Copy wkdest.Worksheets(1).Range("A" & l)
Next sh
'prochaine ligne où seront copiées les données
l = wkdest.[A1000000].End(xlUp).Row + 1
wk.Close savechanges:=False
[COLOR="Red"]end if[/COLOR]
s = Dir
[COLOR="red"]wend[/COLOR]
bonjour et merci smotty
je ne sais pas ce que c qu'un TCD
je ne sais pas utiliser votre programme vba
je ne sais qu'enregistrer des macros et pas en créer
comment fait-on?
bonjour et merci smotty
je ne sais pas ce que c qu'un TCD
je ne sais pas utiliser votre programme vba
je ne sais qu'enregistrer des macros et pas en créer
comment fait-on?
bonjour et merci smotty
je ne sais pas ce que c qu'un TCD
je ne sais pas utiliser votre programme vba
je ne sais qu'enregistrer des macros et pas en créer
comment fait-on?