Targuet.adress ?
Résolu
Antoinelr
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 24603 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à toutes et tous,
Etant une quiche en VBA , je dois pourtant trouver le petit truc qui va bien avec quanddoubleclic. Vos conseils me seront très utiles. Voilà j'explique :
J'ai un classeur à 2 feuilles :
- première feuille ma BD
- deuxième feuille mon application
Quand je suis sur mon application et que je clique sur une cellule où il est écrit "P01" par exemple, il faut que ça aille sur la feuille BD et que je sois positionné sur la ligne dans la BD où une cellule contient "P01". Et s'il n'y a pas écrit "P01" dans la BD, je ne me compliquerai pas la vie. J'attendrai d'avoir votre niveau pour gérer l'erreur !!!
J'ai seulement trouvé ça avec un code de feuille :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Sheets("bd").Select
Mais je ne connais rien en VBA...
Quelqu'un pourrait m'aider?
Avec d'avance tous mes remerciements.
Etant une quiche en VBA , je dois pourtant trouver le petit truc qui va bien avec quanddoubleclic. Vos conseils me seront très utiles. Voilà j'explique :
J'ai un classeur à 2 feuilles :
- première feuille ma BD
- deuxième feuille mon application
Quand je suis sur mon application et que je clique sur une cellule où il est écrit "P01" par exemple, il faut que ça aille sur la feuille BD et que je sois positionné sur la ligne dans la BD où une cellule contient "P01". Et s'il n'y a pas écrit "P01" dans la BD, je ne me compliquerai pas la vie. J'attendrai d'avoir votre niveau pour gérer l'erreur !!!
J'ai seulement trouvé ça avec un code de feuille :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Sheets("bd").Select
Mais je ne connais rien en VBA...
Quelqu'un pourrait m'aider?
Avec d'avance tous mes remerciements.
2 réponses
Bonjour,
un exemple :
fichier exemple : https://www.cjoint.com/?BIzm1FUoSWn
eric
un exemple :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim c As Range If Target.Column = 1 And Target.Row > 1 And Target <> "" Then With Worksheets("BD") .Activate Set c = .[A:A].Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole) If c Is Nothing Then MsgBox ("non trouvé") Else c.Select End If End With End If End Sub
fichier exemple : https://www.cjoint.com/?BIzm1FUoSWn
eric
Excellent !!
Merci beaucoup Eriiic.
Je vais le tester sur mon application cet après-midi. Je pense que je devrai l'adapter car il faut chercher la valeur dans la BD dans la colonne K, et dans la feuille application, la cellule cible peut se situer de B2 à P14.
Je reviendrai te donner des nouvelles.
Encore merci.
A.
Merci beaucoup Eriiic.
Je vais le tester sur mon application cet après-midi. Je pense que je devrai l'adapter car il faut chercher la valeur dans la BD dans la colonne K, et dans la feuille application, la cellule cible peut se situer de B2 à P14.
Je reviendrai te donner des nouvelles.
Encore merci.
A.
Je suis désolé, ça ne fonctionne pas avec mon appli...
L'onglet de ma feuille appli s'appelle Localisation.
L'onglet de ma feuille BD s'appelle BD
Dans ma BD, la colonne cible est la colonne L donc 12 (au lieu de 11)
J'ai modifié la plage des cellules concernées
Ce petit programme est bien mis dans le code de la feuille Localisation
Il ne se passe rien.
Sauf si je sélectionne 2 cellules, il m'affiche alors une erreur d'exécution 13 incompatibilité de type
A.
L'onglet de ma feuille appli s'appelle Localisation.
L'onglet de ma feuille BD s'appelle BD
Dans ma BD, la colonne cible est la colonne L donc 12 (au lieu de 11)
J'ai modifié la plage des cellules concernées
Ce petit programme est bien mis dans le code de la feuille Localisation
Il ne se passe rien.
Sauf si je sélectionne 2 cellules, il m'affiche alors une erreur d'exécution 13 incompatibilité de type
A.
Il réagit sur sélection d'1 cellule, pas sur double-clic (mais on peut le changer).
Sauf si je sélectionne 2 cellules, il m'affiche alors une erreur d'exécution 13 incompatibilité de type
Ajoute cette ligne au début :
if target.cells.count>1 then exit sub
Si toujours des pb tu peux déposer un extrait de ton fichier sur cjoint.com et coller ici le lien fourni.
eric
Sauf si je sélectionne 2 cellules, il m'affiche alors une erreur d'exécution 13 incompatibilité de type
Ajoute cette ligne au début :
if target.cells.count>1 then exit sub
Si toujours des pb tu peux déposer un extrait de ton fichier sur cjoint.com et coller ici le lien fourni.
eric
Bonsoir Eriiic,
J'ai vu que je n'étais plus en doubleclic, mais ta solution me convient aussi.
Je te laisse le lien fichier : https://www.cjoint.com/?3Izs0DhmgoM (j'espère que c'est comme ça que l'on fait...) Je n'avais pas remarqué mais 4 cellules déclenchent la MgsBox (L2, L11, L12 et L15)
Avec d'avance mes remerciements,
A.
J'ai vu que je n'étais plus en doubleclic, mais ta solution me convient aussi.
Je te laisse le lien fichier : https://www.cjoint.com/?3Izs0DhmgoM (j'espère que c'est comme ça que l'on fait...) Je n'avais pas remarqué mais 4 cellules déclenchent la MgsBox (L2, L11, L12 et L15)
Avec d'avance mes remerciements,
A.
La fusion des cellules est très mal gérée par excel et est à réserver pour des cas exceptionnels.
Revois ta mise en page sans fusion et on verra s'il y a toujours des pb après.
Redépose ton fichier après si c'est toujours nécessaire.
Si ça doit être qcq cellules qui déclenchent la recherche précise lesquelles, actuellement c'est toute la colonne sauf la ligne 1 comme tu n'avais rien précisé.
eric
Revois ta mise en page sans fusion et on verra s'il y a toujours des pb après.
Redépose ton fichier après si c'est toujours nécessaire.
Si ça doit être qcq cellules qui déclenchent la recherche précise lesquelles, actuellement c'est toute la colonne sauf la ligne 1 comme tu n'avais rien précisé.
eric