application d'une macro sur un autre fichier

  • Initiateur de la discussion Initiateur de la discussion olivius
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

O

olivius

Guest
Bonjour à tous,
je vous explique mon problème.

J'ai une macro qui extrait des informations dans une feuille et les colle sur une autre feuille du même classeur.

Je voudrais maintenant que cette macro puisse, à partir d'un classeur (de destination) ouvrir un classeur, extraire les infos dans ce fichier et les colle dans le classeur de départ (destination).

voici les morceaux de code que j'ai:

Cheminfichier= application.getOpenFileNAme ("Fichiers Excels (*.xl*), x.xl*")
IfCheminfichier= false then
exit Sub
End If



??????



For Each cell In Worksheets(FeuilleSource).Range("B15", Range("B15").End(xlDown))

If ValeurCellulePrecedente <> cell.Text Then ' test si la cellule "cell" n'est pas égale à la valeur précédente

Worksheets(FeuilleSource).Rows(cell.Row).Copy Destination:=Worksheets("Extraction").Range("A" & Ligne) ' copie de la ligne
Worksheets("Extraction").Range("P" & Ligne).Value = 1 ' compteur à 1
Worksheets("Extraction").Range("P" & Ligne).NumberFormat = "0" ' format nombre entier
ValeurCellulePrecedente = cell.Text ' on met à jour la valeur précédente avec la valeur de la "cell" en cours
Ligne = Ligne + 1
Else ' si la cellule "cell" est égale à la valeur précédente
Worksheets("Extraction").Range("P" & Ligne - 1).Value = Worksheets("Extraction").Range("P" & Ligne - 1).Value + 1 'on incrémente le compteur de 1 pour la ligne d'avant

End If

Next cell
 
Re : application d'une macro sur un autre fichier

j'ai oublié quelque chose d'important, je vous renvoie tout!

Cheminfichier= application.getOpenFileNAme ("Fichiers Excels (*.xl*), x.xl*")
IfCheminfichier= false then
exit Sub
End If



Activesheet.select
feuillesource= activesheet.name
sheets.add
activesheet.name="Extraction"
worksheets("extraction").usedrange.clear
sheets(feuillesource).select



??????



For Each cell In Worksheets(FeuilleSource).Range("B15", Range("B15").End(xlDown))

If ValeurCellulePrecedente <> cell.Text Then ' test si la cellule "cell" n'est pas égale à la valeur précédente

Worksheets(FeuilleSource).Rows(cell.Row).Copy Destination:=Worksheets("Extraction").Range("A" & Ligne) ' copie de la ligne
Worksheets("Extraction").Range("P" & Ligne).Value = 1 ' compteur à 1
Worksheets("Extraction").Range("P" & Ligne).NumberFormat = "0" ' format nombre entier
ValeurCellulePrecedente = cell.Text ' on met à jour la valeur précédente avec la valeur de la "cell" en cours
Ligne = Ligne + 1
Else ' si la cellule "cell" est égale à la valeur précédente
Worksheets("Extraction").Range("P" & Ligne - 1).Value = Worksheets("Extraction").Range("P" & Ligne - 1).Value + 1 'on incrémente le compteur de 1 pour la ligne d'avant

End If

Next cell
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
1
Affichages
307
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
5
Affichages
853
Retour