Forum des développeurs  

Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé.
Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Excel

Excel Forum d'entraide sur Excel

Réponse
 
Outils de la discussion
Vieux 21/08/2008, 14h34   #1 (permalink)
Membre Confirmé
 
Avatar de Peanut
 
Date d'inscription: décembre 2003
Messages: 273
Par défaut Renvoi dynamique vers une autre cellule

Bonjour,

dans une feuille j'ai une colonne qui référence des cellules d'une autre feuille :
Code :
Feuil1:
x abc 1 5 68
y def 2 55 9
z abc 54 66 4
 
Feuil2:
abc blabla
def blabla2
ghi blabla3
J'aimerais que quand on clique par exemple sur def dans la Feuil1, le curseur se positionne tout seul sur la cellule def dans la Feuil2, c'est possible ?

Merci.
Peanut est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/08/2008, 15h15   #2 (permalink)
Membre actif
 
Date d'inscription: mars 2008
Localisation: Nantes
Âge: 26
Messages: 183
Par défaut

Bonjour,

Je vois que 2 solutions :
- Tu connais la position de tes cellules et alors tu utilises des liens hypertextes
- Sinon il faut passer par vba avec Worksheet_SelectionChange
David2304 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/08/2008, 15h16   #3 (permalink)
Membre Confirmé
 
Avatar de Peanut
 
Date d'inscription: décembre 2003
Messages: 273
Par défaut

Non, justement je ne connais pas la position des cellules.
Je vais faire une recherche sur Worksheet_SelectionChange alors, merci.
Peanut est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/08/2008, 15h38   #4 (permalink)
Membre actif
 
Date d'inscription: mars 2008
Localisation: Nantes
Âge: 26
Messages: 183
Par défaut

Tu peux essayer le code ci dessous

Code :
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 
If Target.Value = "" Then
Else
Worksheets("Feuil2").Activate
    For Each cel In Worksheets("Feuil2").Range("A1:Z100")
        If cel.Value = Target.Value Then
        Worksheets("Feuil2").Range(cel.Address).Select
        Exit Sub
        End If
    Next
End If
 
End Sub
On peut surement le perfectionner mais il fonctionne
David2304 est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/08/2008, 15h50   #5 (permalink)
Membre Confirmé
 
Avatar de Peanut
 
Date d'inscription: décembre 2003
Messages: 273
Par défaut

Ca fonctionne, merci beaucoup !
Peanut est déconnecté   Envoyer un message privé Réponse avec citation
Vieux 21/08/2008, 16h23   #6 (permalink)
Membre Confirmé
 
Avatar de Peanut
 
Date d'inscription: décembre 2003
Messages: 273
Par défaut

Question subsidiaire :
je voudrais que ce script ne soit dispo que sur la colonne B:B
mais je n'arrive pas à trouver la syntaxe permettant de dire "si la cellule sélectionnée fait partie de telle colonne" ???

Ah si :
Code :
If Not Intersect(Target, Range("B:B")) Is Nothing Then

Dernière modification par fring ; 22/08/2008 à 10h49 Motif: fusion de 2 messages
Peanut est déconnecté   Envoyer un message privé Réponse avec citation
Réponse

Précédent   Forum des développeurs > Hardware, Systèmes et Logiciels > Microsoft Office > Excel

 
Offres d' emploi informatique sur Lesjeudis.com


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are non
Pingbacks are non
Refbacks are non
Navigation rapide