copie sous condition avant la fermeture du fichier

dj.run

XLDnaute Nouveau
Bonjour à tous et à toutes,

En ce beau dimanche, j'ai encore besoin de votre aide. je vous explique:

Je voudrai, avant la fermeture (beforeclose) de mon application adhérents, si la valeur de la cellule Q3 de la feuil2 est différente de 0.

1) qu'il m'ouvre mon fichier Récap.xls dont l'adresse est c:\che\Récap.xls.

2) qu'il me copie les valeurs des cellules de mon application adhérents:

fichier adhérents\adhé dans Récap\feuil1

C5 dans Récap\feuil1 cellule A2 (si elle n'a pas déjà une valeur, sinon en dessous)
C6 dans Récap\feuil1 cellule B2 (si elle n'a pas déjà une valeur, sinon en dessous)
C16 dans Récap\feuil1 cellule C2 (si elle n'a pas déjà une valeur, sinon en dessous)
C17 dans Récap\feuil1 cellule D2 (si elle n'a pas déjà une valeur, sinon en dessous)

fichier adhérents\Feuil2 dans Récap\feuil2

Q3 dans Récap\feuil1 cellule E2 (si elle n'a pas déjà une valeur, sinon en dessous)


Je vous remercie par avance pour votre aide car moi je perds l'air.....

Djrun
 

dj.run

XLDnaute Nouveau
Re : copie sous condition avant la fermeture du fichier

Bonjour à tous,

Spitnolan08, on avance, mais ça marche pas..... lol

En effet dans ton dernier exemple, (que j'ai adapté) ça marche plus si je modifie un adhérent ou si j'en crée un autre, il ouvre bien le fichier recap...... mais il ne fait pas la mise à jour.

Je te fais passer un exemple en pièce jointe, pour que tu me donne ton avis et que tu regarde si j'ai pas commis une erreur en recopiant ton code.

Merci pour ton aide.

On va y arriver..

DJ.RUN
 

Pièces jointes

  • recap reglements dus.zip
    31.1 KB · Affichages: 31
  • recap reglements dus.zip
    31.1 KB · Affichages: 21
  • recap reglements dus.zip
    31.1 KB · Affichages: 32

Spitnolan08

XLDnaute Barbatruc
Re : copie sous condition avant la fermeture du fichier

Re,

Pour résoudre le problème remplace cette partie de code :
Code:
Dim firstaddress As String

If Sheets("Feuille de monte").Range("Q3") = 0 Then Exit Sub

Workbooks.Open Filename:="C:\CHE adhérents\recap reglements dus.xls"
par
Code:
Dim firstaddress As String, FichSource As String

If Sheets("Feuille de monte").Range("Q3") = 0 Then Exit Sub

FichSource = ThisWorkbook.Name
Workbooks.Open Filename:="C:\CHE adhérents\recap reglements dus.xls"
Workbooks(FichSource).Activate
En effet, dans mes tests je partais avec ton fichier recap ouvert... Le code ne prenait donc pas la bonne valeur pour le nom.

Cordialement
 

dj.run

XLDnaute Nouveau
Re : copie sous condition avant la fermeture du fichier

Bonjour a tous

Spitnolan08,on avance, avec ton changement, il me met bien à jour le fichier recap SI l'adherent existe déjà dedans.

Mais, s'il n'existe pas dans le fichier recap, il bug "variable objet ou variable de bloc with non définie" pour :" firstaddress = Cel1.Address " dans :

With Workbooks("recap reglements dus.xls").Sheets("Feuil1")
'***Recherche si adhérent existe déjà
Set Cel1 = .Range("A2:A" & DerLig).Find(Range("L1").Value)
firstaddress = Cel1.Address

comprends tu pourquoi ?

cordialement

DJ.RUN
 

Spitnolan08

XLDnaute Barbatruc
Re : copie sous condition avant la fermeture du fichier

Re,

Pas trop le temps de tester mais avec cette modif ça devrait le faire...Enfin j'espère.:rolleyes:
Code:
[COLOR=Green]'***Recherche si adhérent existe déjà[/COLOR]
    Set Cel1 = .Range("A2:A" & DerLig).Find(Range("L1").Value)
    If Not Cel1 Is Nothing Then
        firstaddress = Cel1.Address
        
        If Cel1.Offset(0, 1) <> Range("M1").Value Then
            Do
                Set Cel1 = .Range("A2:A" & DerLig).FindNext(Cel1)
                If Cel1.Offset(0, 1) = Range("M1").Value Then DerLig = Cel1.Row
            Loop While Not Cel1 Is Nothing And Cel1.Address <> firstaddress
        End If
        
        DerLig = Cel1.Row
    End If
Sans vouloir te vexer, il serait bon que tu testes et essayes de faire des modifs pour trouver des solutions par toi même. Cela montrerait que tu arrives à comprendre le code. Car c'est le but 1er de ce forum.

Cordialement
 

dj.run

XLDnaute Nouveau
Re : copie sous condition avant la fermeture du fichier

Bonjour à tous,

Merci Spitnolan08, pour ce nouveau code, je vais l'essayer, et je te tienfrai au courant .

Pour information, des tests, des modifs, de ton code, j'en ai fait et meme beaucoup, pour essayer de comprendre, j'utilise aussi beaucoup de livres (excel & vba, vba excel,création de macros VBA,excle le grand livre, et surtout l'aide d'excel) mais j'avoue que c'est "raide" et quand on connait pas c'est encore plus dur à comprendre.

Encore une fois merci pour tout le temps que tu me consacres .

Cordialement

DJ.RUN
 

dj.run

XLDnaute Nouveau
Re : copie sous condition avant la fermeture du fichier

Bonjour à tous, et a toi Spitnolan08,

je tenais vivement à te remercier Spitnolan08, pour ton aide et ta patience, grâce à tes conseils et ton aide, j'ai pu terminer mon application.

je te joints en pièces jointes 2 extraits de mes fichiers car je ne pouvez pas les mettre en entier (trop lourd).

Encore une fois un grand merci.

Cordialement

DJ.RUN
 

Pièces jointes

  • recap reglements dus.zip
    44.4 KB · Affichages: 27
  • recap reglements dus.zip
    44.4 KB · Affichages: 26
  • recap reglements dus.zip
    44.4 KB · Affichages: 26

Discussions similaires

Statistiques des forums

Discussions
312 506
Messages
2 089 126
Membres
104 040
dernier inscrit
pb91