Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 11/08/2011, 16h17   #1
Candidat au titre de Membre du Club
 
Inscription : juin 2011
Messages : 80
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 80
Points : 11
Points : 11
Par défaut probleme de mise a jour en direct entre 2 classeurs excel

Bonjour à tous,

Voila mon problème, je vais essayer d'etre le plus explicite.
J'ai un premier fichier synthèse avec des liens hypertextes vers d'autres fichiers excel.
Dans la synthèse il y a également des données qui viennent de tous ces fichiers avec les formules :
Code :
='C:\Documents and Settings\utilisateur1\Desktop\test\fichier1.xls'!Cellule1
Ainsi lorsque que je change une valeur d'un des fichiers et que je reremplis la synthèse les nouvelles données modifiées apparaissent dans cette dernière.
Le problème est lorsque les deux fichiers sont ouverts en meme temps (le fichier synthèse et un fichier lambda) et que je change une valeur du fichier, ca la modifie en direct dans le fichier synthèse. Et c'est ca que je ne veux pas.
Donc si quelqu'un a une idée de comment empecher cela?

Jspr avoir été assez clair, posez plein de questions si ca ne l'ait pas.
Merci de vos réponses

Tioch
tioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 16h22   #2
Candidat au titre de Membre du Club
 
Homme Alexandre DBQ
Ressources humaines
Inscription : août 2011
Messages : 20
Détails du profil
Informations personnelles :
Nom : Homme Alexandre DBQ
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ressources humaines
Secteur : Service public

Informations forums :
Inscription : août 2011
Messages : 20
Points : 12
Points : 12
Bonjour tioch,

Juste une piste, enfin une idée qui me vient comme ça...
Pourquoi ne pas utiliser un CommandButton pour gérer la mise à jour sur le fichier de synthèse?
Sinon un test sur l'ouverture d'un fichier source et du fichier de synthèse pour empêcher la mise à jour?
Tweelight est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 16h34   #3
Candidat au titre de Membre du Club
 
Inscription : juin 2011
Messages : 80
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 80
Points : 11
Points : 11
Bonjour Tweelight

Alors effectivement j'utilise un commandbutton pour faire la mise a jour, tout a fait ca on est d'accord mais il y a toujours le problème de la mise a jour en direct qui m'embete.
Et alors ca donnerait quoi le test sur l'ouverture d'un fichier source et du fichier de synthèse pour empêcher la mise à jour? Ca serait quoi l'idée ?

Merci bcp
tioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 16h45   #4
Candidat au titre de Membre du Club
 
Homme Alexandre DBQ
Ressources humaines
Inscription : août 2011
Messages : 20
Détails du profil
Informations personnelles :
Nom : Homme Alexandre DBQ
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ressources humaines
Secteur : Service public

Informations forums :
Inscription : août 2011
Messages : 20
Points : 12
Points : 12
On part du principe que les fichiers sont sur un même postes et non sur réseau?
Le fichier synthèse est ouvert en premier et reste ouvert tout le temps?
il faudrait un peu plus détails sur le fonctionnement de l'outil...
_________________________________________________________________
Question stupide, les noms des fichiers ne changeront jamais? Pas de création de fichiers supplémentaires?
_________________________________________________________________
Sinon un test pour savoir si un fichier est ouvert:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
    Dim lWorkbook As Workbook
    Dim lFound As Boolean
 
    lFound = False
    For Each lWorkbook In Workbooks
        If lWorkbook.Name = "FichierX" Then
            lFound = True
            Exit For
        End If
    Next
    If lFound Then
        <Cas ou le fichier "FichierX" existe>
    End If
Tweelight est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/08/2011, 17h09   #5
Candidat au titre de Membre du Club
 
Inscription : juin 2011
Messages : 80
Détails du profil
Informations forums :
Inscription : juin 2011
Messages : 80
Points : 11
Points : 11
Je vais donc ajouter un peu de détails.

Le fichier synthèse est dans un répertoire sur un réseau.
Les autres fichiers lambda sont dans des sous répertoires sur le même réseau.

Le fichier synthèse peut etre ouvert n'importe quand, n'importe quel fichier lambda peut etre ouvert n'importe quand et le fichier synthèse peut etre fermé à tout moment!

Il n'y a pas d'utilisation précise et unique des fichiers.
Je vais essayer de t'expliquer mon problème:
- La personne ouvre le fichier synthèse
- La personne fait la mise à jour : elle compare les dates de modification de tous les fichiers lambda et si,pour chaque fichier, la date est supérieure a celle de la dernière mise à jour elle fait la mise à jour pour ce fichier.
- La personne ouvre n'importe quel fichier lambda
- Elle modifie une valeur dans ce fichier et cette valeur est également automatiquement modifiée dans le fichier synthèse
- La personne ferme son fichier lambda sans enregistrer (donc il n'y a pas de nouvelle date de modification!) par contre la modification reste sur le fichier synthèse
- la personne enregistre son fichier synthèse (et la valeur qui au final n'a pas été changée sur le fichier lambda, a été modifiée dans la synthèse)
- Lors de la mise à jour suivante, comme la date de modification du fichier n'a pas été changée, la mise à jour pour ce fichier ne se fait pas

Voila mon problème, jspr que tu as compris, sinon demande moi
tioch est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 07h15   #6
Candidat au titre de Membre du Club
 
Homme Alexandre DBQ
Ressources humaines
Inscription : août 2011
Messages : 20
Détails du profil
Informations personnelles :
Nom : Homme Alexandre DBQ
Localisation : France, Haut Rhin (Alsace)

Informations professionnelles :
Activité : Ressources humaines
Secteur : Service public

Informations forums :
Inscription : août 2011
Messages : 20
Points : 12
Points : 12
Bonjour tioch,

J'ai tourné et retourné le problème... Mais la gestion en réseau, je ne maitrise pas et je ne souhaite pas dire de connerie.
Mais peut-être une piste à creuser, si tu active le fichier à modifier tu fais fermer le fichier de synthèse? Une fois la modification faite et sauvegarder alors tu ouvres le fichier de synthèse.
J'espère que quelqu'un de plus compétent pourra t'aider.
Tweelight est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h04.


 
 
 
 
Partenaires

Hébergement Web