VBA - Liens entre feuilles depuis des cellules créées
KiteCabrinha
Messages postés
2
Date d'inscription
Statut
Membre
Dernière intervention
-
Zoul67 Messages postés 1959 Date d'inscription Statut Membre Dernière intervention -
Zoul67 Messages postés 1959 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je travaille actuellement sur le développement d'une Macro. Je suis débutant et je suis bloqué dans mon codage.
Je m'explique : j'ai déjà réalisé une macro qui créée un nombre de colonnes que j'ai déterminé à l'aide d'une inputbox (dans ma feuille 1 qui s'appelle Fiche Données). Ce nombre de colonnes génère automatiquement un nombre de feuille. Je souhaite ensuite réalisé des liens entre les cellules des colonnes créées avec une cellules des feuilles créées, et c'est la que ça bloque !!
Par exemple :
Valeur de la cellule F7 (Feuille 1) = Valeur cellule D19 (Feuille 3)
Valeur de la cellule F8 (Feuille 1) = Valeur cellule D19 (Feuille 4)
Valeur de la cellule F9 (Feuille 1) = Valeur cellule D19 (Feuille 5)
J'arrive a faire le lien pour une cellule mais pas à généraliser pour la ligne F de la feuille 1.
Voici le code que j'ai développé :
Code : ' Code pour mettre en relation les feuilles et colonnes d'une même ligne
Private Sub Worksheet_Change(ByVal Target As Range)
'Création des variables pour pouvoir étendre les liens à toutes les feuilles
Dim F As Integer, Fx As Integer
F = Worksheets.Count
For Fx = 1 To F - 2
'Liens entre la feuille Fiche Données et les feuilles de Saturation de Grue
Application.EnableEvents = False 'gèle les évènements
Set F7 = Target.Offset(0, 1)
If Target.Address = "$F$7" Then
Worksheets(Fx + 2).Cells(19, 4) = Target
Application.EnableEvents = True 'les rétablis
End If
Next Fx
End Sub
Comment est-il possible de réaliser ces liens ?
Merci d'avance pour vos réponses :D
Je travaille actuellement sur le développement d'une Macro. Je suis débutant et je suis bloqué dans mon codage.
Je m'explique : j'ai déjà réalisé une macro qui créée un nombre de colonnes que j'ai déterminé à l'aide d'une inputbox (dans ma feuille 1 qui s'appelle Fiche Données). Ce nombre de colonnes génère automatiquement un nombre de feuille. Je souhaite ensuite réalisé des liens entre les cellules des colonnes créées avec une cellules des feuilles créées, et c'est la que ça bloque !!
Par exemple :
Valeur de la cellule F7 (Feuille 1) = Valeur cellule D19 (Feuille 3)
Valeur de la cellule F8 (Feuille 1) = Valeur cellule D19 (Feuille 4)
Valeur de la cellule F9 (Feuille 1) = Valeur cellule D19 (Feuille 5)
J'arrive a faire le lien pour une cellule mais pas à généraliser pour la ligne F de la feuille 1.
Voici le code que j'ai développé :
Code : ' Code pour mettre en relation les feuilles et colonnes d'une même ligne
Private Sub Worksheet_Change(ByVal Target As Range)
'Création des variables pour pouvoir étendre les liens à toutes les feuilles
Dim F As Integer, Fx As Integer
F = Worksheets.Count
For Fx = 1 To F - 2
'Liens entre la feuille Fiche Données et les feuilles de Saturation de Grue
Application.EnableEvents = False 'gèle les évènements
Set F7 = Target.Offset(0, 1)
If Target.Address = "$F$7" Then
Worksheets(Fx + 2).Cells(19, 4) = Target
Application.EnableEvents = True 'les rétablis
End If
Next Fx
End Sub
Comment est-il possible de réaliser ces liens ?
Merci d'avance pour vos réponses :D
A voir également:
- VBA - Liens entre feuilles depuis des cellules créées
- Comment faire un livret avec des feuilles a4 - Guide
- Créer un lien pour partager des photos - Guide
- Verrouiller des cellules excel - Guide
- Bruler des feuilles de laurier - Guide
- Formule excel pour additionner plusieurs cellules - Guide
3 réponses
Bonjour,
Si j'ai bien compris, je pense qu'il vaudrait mieux que tes nouvelles feuilles (3, 4 et 5) cherchent par formule la valeur adéquate dans ta base (Feuille 1).
ça ressemble un peu à une réponse que je viens de donner dans ce fil : www.commentcamarche.net/forum/affich-34115605-renommer-automatiquement-une-feuille-d-apres-une-cellule#p34160126
A+
Si j'ai bien compris, je pense qu'il vaudrait mieux que tes nouvelles feuilles (3, 4 et 5) cherchent par formule la valeur adéquate dans ta base (Feuille 1).
ça ressemble un peu à une réponse que je viens de donner dans ce fil : www.commentcamarche.net/forum/affich-34115605-renommer-automatiquement-une-feuille-d-apres-une-cellule#p34160126
A+
Bonjour,
Je rejoins ce qui est dit par Zoul67 (que je salue).
Autant utiliser la macro qui crée les feuilles pour placer dans la cellule D19 de la nouvelle feuille la liaison vers la cellule associée avec une formule du type =Données!F7
Cela t’évitera d’avoir à utiliser la procédure Worksheet_Change().
A+
Je rejoins ce qui est dit par Zoul67 (que je salue).
Autant utiliser la macro qui crée les feuilles pour placer dans la cellule D19 de la nouvelle feuille la liaison vers la cellule associée avec une formule du type =Données!F7
Cela t’évitera d’avoir à utiliser la procédure Worksheet_Change().
A+
Bonjour à vous 2 et merci pour vos réponses.
J'ai essayer vos propositions mais je n'arrive pas à obtenir ce que je veux.
C'est le décalage du liens entre les cellules des différentes feuilles qui me pose problème.
Sachant que les feuilles de 3 à 50 sont créer sur demande de la feuille 1, je ne peux pas mettre la macro dans les feuilles puisqu'elle ne sont pas encore créées.
Ce n'est vraiment pas possible avec la formule Worksheet_Change ?
A+
J'ai essayer vos propositions mais je n'arrive pas à obtenir ce que je veux.
C'est le décalage du liens entre les cellules des différentes feuilles qui me pose problème.
Sachant que les feuilles de 3 à 50 sont créer sur demande de la feuille 1, je ne peux pas mettre la macro dans les feuilles puisqu'elle ne sont pas encore créées.
Ce n'est vraiment pas possible avec la formule Worksheet_Change ?
A+
L'appel systématique à Worksheet_Change ne semble pas très propre.
Selon le nom des onglets tu peux avoir une formule unique dans chacune des cellules D19 mais qui utilisera le nom de l'onglet.
Ceci permettrait de renvoyer les valeurs de lignes différentes (F7, F8, F9,...)
Tu peux t'inspirer de ceci : https://forums.commentcamarche.net/forum/affich-15262945-nom-numero-onglet-pour-formule-excel
ou partager ton fichier via https://www.cjoint.com/ en postant le lien créé dans ce fil de discussion.
A+
Selon le nom des onglets tu peux avoir une formule unique dans chacune des cellules D19 mais qui utilisera le nom de l'onglet.
Ceci permettrait de renvoyer les valeurs de lignes différentes (F7, F8, F9,...)
Tu peux t'inspirer de ceci : https://forums.commentcamarche.net/forum/affich-15262945-nom-numero-onglet-pour-formule-excel
ou partager ton fichier via https://www.cjoint.com/ en postant le lien créé dans ce fil de discussion.
A+