Créer une macro
Résolu/Fermé
Lucie17_0626
Messages postés
61
Date d'inscription
lundi 21 janvier 2019
Statut
Membre
Dernière intervention
3 juillet 2020
-
21 janv. 2019 à 21:50
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 - 23 janv. 2019 à 20:18
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 - 23 janv. 2019 à 20:18
A voir également:
- Créer une macro
- Créer un compte gmail - Guide
- Créer un compte google - Guide
- Créer un groupe whatsapp - Guide
- Créer une adresse hotmail - Guide
- Créer une liste déroulante excel - Guide
4 réponses
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
23 janv. 2019 à 09:59
23 janv. 2019 à 09:59
Re
le fichier facture
https://mon-partage.fr/f/MXiffhv9/
le fichier récapitulatif
https://mon-partage.fr/f/8wdoFG1W/
Je te rappelle que les deux fichier sont ouverts dans la même session d'excel (dans le menu fenêtre, tu dois les voir tous les deux)
Cdlmnt
le fichier facture
https://mon-partage.fr/f/MXiffhv9/
le fichier récapitulatif
https://mon-partage.fr/f/8wdoFG1W/
Je te rappelle que les deux fichier sont ouverts dans la même session d'excel (dans le menu fenêtre, tu dois les voir tous les deux)
Cdlmnt
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
21 janv. 2019 à 23:03
21 janv. 2019 à 23:03
Bonjour
Un début : le code est dans Module 1
https://www.cjoint.com/c/IAvwdisW4VB
Cdlmnt
Un début : le code est dans Module 1
https://www.cjoint.com/c/IAvwdisW4VB
Cdlmnt
Lucie17_0626
Messages postés
61
Date d'inscription
lundi 21 janvier 2019
Statut
Membre
Dernière intervention
3 juillet 2020
3
21 janv. 2019 à 23:04
21 janv. 2019 à 23:04
Merci beaucoup pour ton aide.
Lucie17_0626
Messages postés
61
Date d'inscription
lundi 21 janvier 2019
Statut
Membre
Dernière intervention
3 juillet 2020
3
22 janv. 2019 à 01:27
22 janv. 2019 à 01:27
Quand je met mes deux fichiers sur des classeurs différent je n'arrive pas a renommer F1
F1 = Workbooks("A").Worksheets("B")
et idem pour F2 comment puis-je régler le problème svp.
F1 = Workbooks("A").Worksheets("B")
et idem pour F2 comment puis-je régler le problème svp.
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
22 janv. 2019 à 17:33
22 janv. 2019 à 17:33
Je ne comprends pas ce que tu veux dire.
Peut être veux tu envoyer les données sur le deuxième fichier au lieu de la deuxième feuille du premier.
En fait, je t'ai proposé un début de réponse, mais c'est à toi de continuer. Si tu as un problème, envoie ton travail et expliques clairement ce qui ne focntionne pas
Cdlmnt
Peut être veux tu envoyer les données sur le deuxième fichier au lieu de la deuxième feuille du premier.
En fait, je t'ai proposé un début de réponse, mais c'est à toi de continuer. Si tu as un problème, envoie ton travail et expliques clairement ce qui ne focntionne pas
Cdlmnt
Lucie17_0626
Messages postés
61
Date d'inscription
lundi 21 janvier 2019
Statut
Membre
Dernière intervention
3 juillet 2020
3
22 janv. 2019 à 18:58
22 janv. 2019 à 18:58
Bonjour,
Je ne peux pas envoyer mon travail car le fichier est trop volumineux.
Sur la macro que tu m'as envoyé tu as mis les deux fichier dans un même classeur mais sur deux feuilles différentes tu arrives donc a nommer tes constantes : F1=Feuil1 et F2=Feuil2
Dans mon fichier le bon de livraison et le tableau récapitulatif sont sur deux classeurs différents car une personne possède le bon de livraison et une autre possède le tableau récapitulatif donc pour nommer mes constantes F1 se trouve dans un autre classeur d'où mon :
F1= Workbooks("A").Worksheets("B") qui représente la classeur ainsi que la feuille contenant le bon de livraison
C'est de cette partie que viens le problème car lors de la formule With la macro bloque.
Mais je te remercie pour ta réponse précédente qui m'a beaucoup aider.
Je ne peux pas envoyer mon travail car le fichier est trop volumineux.
Sur la macro que tu m'as envoyé tu as mis les deux fichier dans un même classeur mais sur deux feuilles différentes tu arrives donc a nommer tes constantes : F1=Feuil1 et F2=Feuil2
Dans mon fichier le bon de livraison et le tableau récapitulatif sont sur deux classeurs différents car une personne possède le bon de livraison et une autre possède le tableau récapitulatif donc pour nommer mes constantes F1 se trouve dans un autre classeur d'où mon :
F1= Workbooks("A").Worksheets("B") qui représente la classeur ainsi que la feuille contenant le bon de livraison
C'est de cette partie que viens le problème car lors de la formule With la macro bloque.
Mais je te remercie pour ta réponse précédente qui m'a beaucoup aider.
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
22 janv. 2019 à 20:57
22 janv. 2019 à 20:57
Les deux classeurs sont ils ouverts dans la même session d'excel ?
Lucie17_0626
Messages postés
61
Date d'inscription
lundi 21 janvier 2019
Statut
Membre
Dernière intervention
3 juillet 2020
3
23 janv. 2019 à 01:22
23 janv. 2019 à 01:22
Oui les deux classeurs sont ouvert dans la même session. J'ai essayer de mettre le bon de livraison sur le même classeur que celui du tableau et en faisant cela c'est à la boucle : With Sheets(F1) que ça bloque "l'indice n'appartient pas à la selection"
J'ai repris le début de code que vous m'aviez donné pour essayer.
Option Explicit
' constantes décrivant la configuration - à adapter
Public Const F1 = "Feuil4"
Public Const celdatF1 = "C2"
Public Const celnumF1 = "C6"
Public Const celvaaF1 = "C10"
Public Const celageF1 = "D10"
Public Const plagefF1 = "$A$20:$C$42"
Public Const F2 = "Feuil3"
Public Const covaaF2 = "A"
Public Const coageF2 = "B"
Public Const codesF2 = "C"
Public Const cocomF2 = "D"
Public Const coimeF2 = "E"
Public Const cobonF2 = "F"
Public Const codatF2 = "G"
Public Const comoiF2 = "H"
Public Const coannF2 = "I"
Public Sub Archiver()
Dim ligne As Long
Dim vaahiva As String, qte As Long, num As Long, dat, moi, ann
Dim nbdes As Long, codes As String, lides As Long, numdes As Long
' recupération des données feuille F1
With Sheets(F1)
vaahiva = .RANGE(celvaaF1).Value
num = .RANGE(celnumF1).Value
dat = .RANGE(celdatF1).Value
moi = Month(dat)
ann = Year(dat)
codes = Split(.RANGE(plagefF1).Address, "$")(1)
lides = Left(Split(plagefF1, "$")(2), Len(Split(plagefF1, "$")(2)) - 1)
nbdes = .RANGE(codes & Rows.Count).End(xlUp).Row - lides + 1
End With
' tranfer dans F2
With Sheets(F2)
' première ligne vide colonne A
ligne = .RANGE(covaaF2 & Rows.Count).End(xlUp).Row + 1
' pour chaque designation
For numdes = 1 To nbdes
.RANGE(covaaF2 & ligne).Value = vaahiva
.RANGE(coageF2 & ligne).Value = Sheets(F1).RANGE(plagefF1).Cells(numdes, 1).Value
.RANGE(cocomF2 & ligne).Value = Sheets(F1).RANGE(plagefF1).Cells(numdes, 2).Value
.RANGE(coimeF2 & ligne).Value = Sheets(F1).RANGE(plagefF1).Cells(numdes, 3).Value
.RANGE(codatF2 & ligne).Value = dat
.RANGE(comoiF2 & ligne).Value = moi
.RANGE(coannF2 & ligne).Value = ann
ligne = ligne + 1
Next numdes
End With
End Sub
J'ai repris le début de code que vous m'aviez donné pour essayer.
Lucie17_0626
Messages postés
61
Date d'inscription
lundi 21 janvier 2019
Statut
Membre
Dernière intervention
3 juillet 2020
3
23 janv. 2019 à 01:23
23 janv. 2019 à 01:23
Sur ce code le bon de livraison et le tableau sont sur le même classeur.
En te remerciant pour ton aide.
En te remerciant pour ton aide.
23 janv. 2019 à 20:00
23 janv. 2019 à 20:18
Si c'est fini, peux tu mettre le sujet à résolu (en haut à droite, la roue dentée)
Bonne soirée