Test pour placer le curseur

Résolu/Fermé
vieuxray - Modifié le 30 oct. 2018 à 22:42
 vieuxray - 30 oct. 2018 à 11:28
Bonsoir a tous, forum bonsoir,


Sous Windows 10 et Excel 2007

Je souhaiterai svp effectuez un test pour positionner un curseur redessiner.

Voir le fichier en cliquant sur le lien ci dessous.

Ou j'ai mis des explications plus précises dans le fichier.

https://www.cjoint.com/c/HJApKkGMW0z

Merci pour votre aide bon W-end a tous.

Cdlt Raymond
A voir également:

11 réponses

yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
27 oct. 2018 à 10:26
bonjour, tu as même pensé à écrire un commentaire qui t'explique pourquoi cela se comporte ainsi:
'Activer la cellule en colonne B sans déclencher l'évènement Worksheet_SelectionChange
1
Salut yg_be,

Cette partie du code ce n'ai pas moi qui l'ai faites, ni commenter.
J'avais demander que après avoir écrit la date en colonne (A) que le curseur se positionne dans la colonne (B) prèt a renseigner la cellule suivante.

Apparament, il y avait une difficulté pour y parvenir mais je n'en sais pas plus, il a juste écrit ce commentaire que je n'ai pas compris d'ailleurs.

Merci pour ton aide, bon w-end a toi.

Cdlt Ray
0
Salut yg_be,

J'ai fait d'autres essais hier mais je suis revenu a la case départ car ça ne fonctionne pas.
J'ai également regarder a propos de ton message mais je n'ai pas franchement bien compris.
Je vais chercher un autre code pour mettre l'entourage de la bordure de la cellule active en rouge.

Bon dimanche a toi et merci.

Cdlt Ray
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
28 oct. 2018 à 10:33
as-tu essayé d'activer la cellule en colonne B en déclenchant l'évènement Worksheet_SelectionChange?
0
Re yg_be,

Merci pour ta réponse,
J'ai mis en gras la ligne qui fait passer a la colonne (B) mais le curseur rouge ne suit pas.
Le code "du curseur rouge" n'ai peut être pas placer la ou il faut.
J'ai donc penser que d'autres codes du programme pourraient se croiser et donc risque de pertubation.
En tout cas je ni arrive pas.

A plus tard et merci bien.

'SUR CLIC DROIT EN COLONNE (A) INSÈRE/SUPPRIME LA DATE
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, cancel As Boolean)    'Clic droit
    If Target.Columns.Count > 1 Then Exit Sub                               'Aucune action quand selection multicolonne
    dL = Me.Range("B" & Rows.Count).End(xlUp).Row                   'Dernière ligne de la colonne B
   Set r = Intersect(Target, Me.Range("A3:A" & dL + 1))               'Plage à traiter
    If Not r Is Nothing Then                                                           'Aucune action quand selection hors plage
             cancel = True                                                                'Annuler l'affichage du menu contextuel
                          
        For Each c In r.Cells                                                            'Pour chaque cellule de la plage à traiter
Application.EnableEvents = False                                                 'Désactiver les évènements
                Call Module1.Affiche_Date(c)                                       'Afficher la date dans la cellule Macro "MODULE1.AFFICHE_DATE(C)"
                Me.Columns(1).AutoFit                                                'Ajuster la largeur de la colonne
                Target.Cells(1, 1).Offset(0, 1).Activate                         'Activer la cellule en colonne B sans déclencher l'évènement Worksheet_SelectionChange
'Le curseur actif fonctionne bien MAIS le curseur rouge ne suis pas le curseur actif
Application.EnableEvents = True                                                  'Rétablir les évènements
        Next c                                                                                'Cellule suivante
    End If
End Sub
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
28 oct. 2018 à 12:15
as-tu essayé en mettant la ligne en gras après la ligne:
Application.EnableEvents = True 'Rétablir les évènements
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Merci pour ta réponse

Oui bien sur, mais j'ai mis pleins de code pour essayer d'arriver a ce que je souhaite, du coup, je ne sais plus quoi mettre maintenant.

Je n'ai pas la connaissance du VBA pourtant j'aime bien, j'ai déjà chercher des tutos pas a pas complet mais ça déborde très vite et impossible de suivre pour moi, je n'ai pas de diplôme et la langue me déteste, LOL, juste fréquenter l'école jusqu'à 14 ans, ceci dit l'informatique est ma passion, je sais beaucoup de choses mais l'informatique comme tu le sais est un très vaste domaine qu'il reste très difficile de tous maitriser.
Bon app et bonne après midi.
Cdlt Ray
0
Salut yg_be,

Bon, je n'arrive toujours pas, si d'après toi il y a une possibilité, tu peux svp m'orienter vers cette solution
pour moi maintenant je vois plus comment faire même après avoir écumer le net.

Sinon tant pis, ça restera comme ça.

Bon app, bon après midi et merci pour ton aide.

Cdlt Ray
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
29 oct. 2018 à 14:37
qu'observes-tu en faisant ce que je suggère en #6?
0
Salut yg_be,

Merci pour ta réponse,

j'ai entrer beaucoup de codes différents pour essayer que le curseur rouge suive le curseur original.

Donc ce qui ce passe est toujours pareil:
Je clic droit dans la dernière cellule vide de la colonne (A)
Puis la date s'affiche et le curseur normal saute en colonne (B)

jusque la c'est ok

Mais le curseur rouge le shape qui colorie la bordure du vrai curseur reste figé en colonne (A)

Donc je renseigne la cellule de la colonne (B) puis je valide avec la touche TAB et le curseur original saute en colonne (C)

Et le curseur rouge aussi ???
idem pour la colonne (D)

Je ne sais pas pourquoi ca ne marche pas avec la conne (B) d'où mon doute avec un code du programme qui serait en conflit, mais je ne sais pas plus.

J'espère avoir été assez précis pour t'aider.
Bonne après midi a plus tard et merci

Cdlt Ray
0
salut

je répondu a ta question

qu'observes-tu en faisant ce que je suggère en #6?

et je ne vois pas le message de la réponse.

ce message est le 10 ième ??? bizarre j'ai du me gourer

a moins que tu n'ai eu ma réponse ????

dit moi svp
0
Salut yg_be,

Donc ce que j'observe est toujours pareil. curseur rouge reste figé dans la colonne (A)

Je clic dans la dernière cellule vide de la colonne (A)
la s'affiche puis le curseur actif passe en colonne (B)
MAIS le curseur rouge "shape" qui colorie la bordure du cureur actif reste bloquer en colonne (A)

donc je renseigne la cellule de la colonne (B) et je valide par la touche TAB ce qui fait passer le curseur actif en colonne (D)

et la miracle le curseur rouge suit bien

D'où le doute du moins je pense qu'il doit avoir un code du programme qui rentre en conflit avec la colonne (A) ou (B)

A partir de je ne sais plus

Je te renvoie la réponse que tu attends sans doute.

Merci pour ton aide bonne après midi

Ray
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
29 oct. 2018 à 19:20
j'attends que tu fasses ce que j'ai suggéré en #6: peux-tu partager ton code modifié en fonction de cette suggestion?
0
Bonsoir, yg_be,

J'avais mal interprèter ta question,

J'avais penser que tu voulais que je mette du code que j'avais mis lors de mes essais.

as-tu essayé en mettant la ligne en gras après la ligne:
Application.EnableEvents = True 'Rétablir les évènements

      
For Each c In r.Cells 'Pour chaque cellule de la plage à traiter
Application.EnableEvents = False 'Désactiver les évènements
Call Module1.Affiche_Date(c) 'Afficher la date dans la cellule Macro "MODULE1.AFFICHE_DATE(C)"
Me.Columns(1).AutoFit 'Ajuster la largeur de la colonne
Application.EnableEvents = True 'Rétablir les évènements
Target.Cells(1, 1).Offset(0, 1).Activate 'Activer la cellule en colonne B sans déclencher l'évènement Worksheet_SelectionChange

Next c 'Cellule suivante


Hé bien t'es trop fort, merci beaucoup, j'aurai pas penser a faire , vu que le code était entre désactiver et activer les évènements, je me suis dit si c'est coder comme ca c'est qu'il y a une raison.

Mais alors pourquoi avoir mis " Target.Cells(1, 1).Offset(0, 1).Activate " après avoir rétabli les évènements ?????

Bon, enfin, ca fonctionne c'est la l'essentiel, dire que j'en ai fait des essais, LOL j'ai appris au passage.

Encore merci a toi bonne soirée et merci.

A bientôt sans aucun doute LOL

Bien cordialement Raymond
0
yg_be Messages postés 22730 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 477
29 oct. 2018 à 21:50
il y avait sans doute une raison, elle n'est peut-être plus valable. à toi de tester.
0
Salut yg_be,

Bien des mercis, j'ai tout tester aucun soucis ca fonctionne
parfaitement bien.

Je clos le sujet, bonne journée et encore merci a toi.

Cordialement Raymond
0