Petit code a transformer en Macro Sub
Fermé
vieuxray
-
Modifié le 3 nov. 2018 à 20:25
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 - 4 nov. 2018 à 19:40
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 - 4 nov. 2018 à 19:40
A voir également:
- Petit code a transformer en Macro Sub
- Code ascii de a - Guide
- Code puk bloqué - Guide
- Code telephone oublié - Guide
- Code activation windows 10 - Guide
- Transformer majuscule en minuscule word - Guide
9 réponses
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
Ambassadeur
1 554
Modifié le 3 nov. 2018 à 10:13
Modifié le 3 nov. 2018 à 10:13
bonjour, peux-tu poster ton code en utilisant la coloration syntaxique?
par ailleurs, "transformer le code ci-dessous en une Macro" peut vouloir dire mille choses différentes.
explique-nous plutôt ce que tu souhaites faire ensuite avec le nouveau code que tu demandes: comment tu vas l'utiliser, et ce que souhaites qu'il réalise.
par ailleurs, "transformer le code ci-dessous en une Macro" peut vouloir dire mille choses différentes.
explique-nous plutôt ce que tu souhaites faire ensuite avec le nouveau code que tu demandes: comment tu vas l'utiliser, et ce que souhaites qu'il réalise.
Salut yg_be,
Merci pour ta réponse,
Je comprends pas, j'ai pourtant poster le code entre les balises, bon on va dire un coup raté, désolé.
Je souhaiterai transformer ce code afin de pouvoir l'utiliser dans d'autres programmes.
Mais actuellement dans mon programme, il arrive que j'ai n'ai pas besoin du petit rectangle rouge qui s'affiche.
Avec une Macro Sub comme ça je peux l'appeler comme bon me semble.
J'ai trouver ce code sur le net, il entoure la bordure de la cellule active en Rouge, pratique dans de grands tableaux.
On pourrai baptiser la Macro "Sub Curseur_Rouge()" par Exemple
Merci a toi pour ton aide, bon W-end a toi.
Cdlt Ray
Merci pour ta réponse,
Je comprends pas, j'ai pourtant poster le code entre les balises, bon on va dire un coup raté, désolé.
Je souhaiterai transformer ce code afin de pouvoir l'utiliser dans d'autres programmes.
Mais actuellement dans mon programme, il arrive que j'ai n'ai pas besoin du petit rectangle rouge qui s'affiche.
Avec une Macro Sub comme ça je peux l'appeler comme bon me semble.
J'ai trouver ce code sur le net, il entoure la bordure de la cellule active en Rouge, pratique dans de grands tableaux.
On pourrai baptiser la Macro "Sub Curseur_Rouge()" par Exemple
Merci a toi pour ton aide, bon W-end a toi.
Cdlt Ray
'*** CURSEUR ROUGE RECTANGULAIRE Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Target, Feuil1.Range("A3:J200")) Is Nothing Then If Target.Row < 3 Or Target.CountLarge > 1 Then Exit Sub With Me On Error Resume Next .Shapes("Curseur").visible = Cursor 'Variable (Cursor "True" =Visible) sinon (Cursor "False" =Non Visible) If Err <> 0 Then With .Shapes.AddShape(msoShapeRectangle, 6, 6, 8, 6) .Name = "Curseur" .Fill.ForeColor.RGB = vbRed .Line.visible = True End With End If End With End If On Error GoTo 0 With Me.Shapes("curseur") .Left = Target.Left 'Gauche .Top = Target.Top 'Haut/Bas .Width = Target.Width 'Longueur .Height = Target.Height 'Hauteur End With
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
Modifié le 3 nov. 2018 à 11:47
Modifié le 3 nov. 2018 à 11:47
toujours pas de balise de code, relis bien l'article...
ceci est une réponse possible à ta demande imprécise:
ceci est une réponse possible à ta demande imprécise:
Sub Curseur_Rouge() Dim rg As Range, ws As Worksheet Set ws = ActiveSheet Set rg = ActiveCell On Error Resume Next ws.Shapes("Curseur").Visible = True If Err <> 0 Then ws.Shapes.AddShape(msoShapeRectangle, 6, 6, 8, 6).Name = "Curseur" ws.Shapes.AddShape(msoShapeRectangle, 6, 6, 8, 6).Fill.ForeColor.RGB = vbRed ws.Shapes.AddShape(msoShapeRectangle, 6, 6, 8, 6).Line.Visible = True End If On Error GoTo 0 ws.Shapes("Curseur").Left = rg.Left 'Gauche ws.Shapes("Curseur").Top = rg.Top 'Haut/Bas ws.Shapes("Curseur").Width = rg.Width 'Longueur ws.Shapes("Curseur").Height = rg.Height 'Hauteur End Sub
Re yg_be
J'ai bien mis le code entre les balises, je ferai attention a l'avenir, j'ai cliquer sur la flèche qui pointe vers le bas cela m'a donner une liste de langage mais je mets lequel pour le VBA ???
Ceci dit, merci pour le code modifier, mais quand je lance la macro le curseur apparait bien dans la cellule active mais quand je déplace le curseur redevient normal sans couleur rouge.
Je pensais donc peut être une macro pour lancer le fonctionnement du curseur
et une autre macro pour arrêter le fonctionnement du curseur.
Un peu comme un chronomètre.
Merci pour ton aide
Cdlt Ray
J'ai bien mis le code entre les balises, je ferai attention a l'avenir, j'ai cliquer sur la flèche qui pointe vers le bas cela m'a donner une liste de langage mais je mets lequel pour le VBA ???
Ceci dit, merci pour le code modifier, mais quand je lance la macro le curseur apparait bien dans la cellule active mais quand je déplace le curseur redevient normal sans couleur rouge.
Je pensais donc peut être une macro pour lancer le fonctionnement du curseur
et une autre macro pour arrêter le fonctionnement du curseur.
Un peu comme un chronomètre.
Merci pour ton aide
Cdlt Ray
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
3 nov. 2018 à 12:45
3 nov. 2018 à 12:45
"basic" pour VBA.
prends ton temps et décris précisément ce que tu voudrais réaliser. ne parle pas trop vite de macro et de programme, concentre-toi sur le fonctionnement que tu souhaites.
le code que je t'a fourni fait exactement ce que tu as demandé: la même chose que le code de départ. cela indique bien que ta demande était imprécise.
prends ton temps et décris précisément ce que tu voudrais réaliser. ne parle pas trop vite de macro et de programme, concentre-toi sur le fonctionnement que tu souhaites.
le code que je t'a fourni fait exactement ce que tu as demandé: la même chose que le code de départ. cela indique bien que ta demande était imprécise.
Re yg_be,
Je souhaiterai que lorsque je lance la macro que la cellule active soit entouré de sa bordure en rouge et se déplace sur l'écran normalement mais en rouge.
Et si il arrive que je n'ai pas ou plus besoin de l'affichage de la cellule active en rouge pouvoir désactiver la macro et que le déplacement de la cellule active sur l'écran redevienne normal.
Comme je t'ai dit un peu comme un chrono que l'on démarre et arrête quand on n'a plus besoin.
Voila, je me suis appliquer et fait de mon mieux pour être le plus précis possible.
Merci a toi et bonne après midi.
Cdlt Ray
Je souhaiterai que lorsque je lance la macro que la cellule active soit entouré de sa bordure en rouge et se déplace sur l'écran normalement mais en rouge.
Et si il arrive que je n'ai pas ou plus besoin de l'affichage de la cellule active en rouge pouvoir désactiver la macro et que le déplacement de la cellule active sur l'écran redevienne normal.
Comme je t'ai dit un peu comme un chrono que l'on démarre et arrête quand on n'a plus besoin.
Voila, je me suis appliquer et fait de mon mieux pour être le plus précis possible.
Merci a toi et bonne après midi.
Cdlt Ray
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
3 nov. 2018 à 14:30
3 nov. 2018 à 14:30
ajoute alors ceci dans un module existant ou nouveau:
ensuite, dans Worksheet_SelectionChange, ajoute ceci après
Public BRvisible As Boolean Sub voirBR() BRvisible = True End Sub Sub cacherBR() BRvisible = False End Sub
ensuite, dans Worksheet_SelectionChange, ajoute ceci après
.Width = Target.Width 'Longueur:
.Visible = BRvisible
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re
Merci pour ta réponse,
Donc si j'ai bien compris
Je copie les codes que tu viens de faire dans module ça ok
Puis je reprends mon programme original, je copie la macro Sub Curseur_Rouge() dans un module
Puis je vais dans "Worksheet_SelectionChange" de mon programme original
et je copie " .Visible = BRvisible" après .Width = Target.Width 'Longueur
Pour l'utilisation je place le code Sub voirBR() ou j'ai besoin
Puis si je souhaite l'arrèter je place le code Sub cacherBR() là ou je n'ai plus besoin
Merci beaucoup pour les codes, j'attends ta réponse afin d'éviter des manipulations inutiles.
et je modifie.
Cdlt Ray
Merci pour ta réponse,
Donc si j'ai bien compris
Je copie les codes que tu viens de faire dans module ça ok
Puis je reprends mon programme original, je copie la macro Sub Curseur_Rouge() dans un module
Puis je vais dans "Worksheet_SelectionChange" de mon programme original
et je copie " .Visible = BRvisible" après .Width = Target.Width 'Longueur
Pour l'utilisation je place le code Sub voirBR() ou j'ai besoin
Puis si je souhaite l'arrèter je place le code Sub cacherBR() là ou je n'ai plus besoin
Merci beaucoup pour les codes, j'attends ta réponse afin d'éviter des manipulations inutiles.
et je modifie.
Cdlt Ray
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
3 nov. 2018 à 15:16
3 nov. 2018 à 15:16
oublie Sub Curseur_Rouge(), c'était une réponse inutile à une question imprécise.
pour le reste, je pense que tu m'as compris.
tu avais parlé de nouvelles macros, tu n'avais pas mentionné que tu allais appeller les nouvelles sub ailleurs: on verra ce que cela va donner.
quand tu écris "je lance la macro", je comprends que c'est toi qui va le faire. si un programme appelle une sub, c'est autre chose. le vocabulaire permet de se faire comprendre.
pour le reste, je pense que tu m'as compris.
tu avais parlé de nouvelles macros, tu n'avais pas mentionné que tu allais appeller les nouvelles sub ailleurs: on verra ce que cela va donner.
quand tu écris "je lance la macro", je comprends que c'est toi qui va le faire. si un programme appelle une sub, c'est autre chose. le vocabulaire permet de se faire comprendre.
Re Salut yg_be,
Obliger de sortir un moment, mais bon voila, j'ai fait les essais ça fonctionne très bien.
'Il faudrait tester si les deux colonnes (E et F) ne sont plus coloriés en Rouge pour
placer le code "Call voirBR()" de réactivation du curseur rouge.
Si colonne (E et F) ne sont plus en rouge alors "Call voirBR()" = réactivation
Sinon faire en sorte de ne pas réactivé tant qu'une des colonnes (E ou F) comporte encore une cellule rouge.
Je n'ai pas trouvé d'autres idées a moins d'une recopie automatique mais la c'est une autre histoire.
Dit moi svp , si l'idée est bonne svp
Merci a toi bonne soirée déjà
Cdlt Ray
Obliger de sortir un moment, mais bon voila, j'ai fait les essais ça fonctionne très bien.
'Il faudrait tester si les deux colonnes (E et F) ne sont plus coloriés en Rouge pour
placer le code "Call voirBR()" de réactivation du curseur rouge.
Si colonne (E et F) ne sont plus en rouge alors "Call voirBR()" = réactivation
Sinon faire en sorte de ne pas réactivé tant qu'une des colonnes (E ou F) comporte encore une cellule rouge.
Je n'ai pas trouvé d'autres idées a moins d'une recopie automatique mais la c'est une autre histoire.
Dit moi svp , si l'idée est bonne svp
Merci a toi bonne soirée déjà
Cdlt Ray
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
3 nov. 2018 à 19:17
3 nov. 2018 à 19:17
peux-tu marquer comme résolu si cela fonctionne très bien?
re yg_be
Comment svp je peux tester les deux colonnes (E et F) après c'est bon, je t'embêtes plus, merci
bonne soirée a toi
'Il faudrait tester si les deux colonnes (E et F) ne sont plus coloriés en Rouge pour
placer le code "Call voirBR()" de réactivation du curseur rouge.
Si colonne (E et F) ne sont plus en rouge alors "Call voirBR()" = réactivation
Sinon faire en sorte de ne pas réactivé tant qu'une des colonnes (E ou F) comporte encore une cellule rouge.
Comment svp je peux tester les deux colonnes (E et F) après c'est bon, je t'embêtes plus, merci
bonne soirée a toi
'Il faudrait tester si les deux colonnes (E et F) ne sont plus coloriés en Rouge pour
placer le code "Call voirBR()" de réactivation du curseur rouge.
Si colonne (E et F) ne sont plus en rouge alors "Call voirBR()" = réactivation
Sinon faire en sorte de ne pas réactivé tant qu'une des colonnes (E ou F) comporte encore une cellule rouge.
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
3 nov. 2018 à 19:47
3 nov. 2018 à 19:47
quand tu écris "comment je peux tester", je suppose que "je", ce n'est pas toi?
merci d'utiliser un vocabulaire précis, et d'indiquer aussi "quand".
merci aussi d'essayer, dès le départ, d'expliquer l'ensemble de ce que tu veux réaliser. pour éviter les fausses pistes.
merci d'utiliser un vocabulaire précis, et d'indiquer aussi "quand".
merci aussi d'essayer, dès le départ, d'expliquer l'ensemble de ce que tu veux réaliser. pour éviter les fausses pistes.
Salut yg_be,
Merci pour ta réponse,
Je comprends bien mais ce n'ai pas toujours facile d'écrire ce que l'on souhaite et toi de bien comprendre ce que je voudrais réaliser, surtout quand la demande est mal formuler, désolé.
Donc, une fois terminer la recopie d'une ou des formules qui se sont trouvé effacer dans les colonnes (E et F).
Je souhaiterais svp effectuer un test sur les colonnes (E et F).
Je voudrais faire ré apparaitre le curseur rouge en étant sur que les colonnes (E et F) ne comporte plus de cellules colorisés en rouge.
Ma pensée Ex:
Tant qu'une des deux colonnes a encore une ou des cellules colorisé en Rouge alors on ne ré active PAS le curseur rouge.
Si les deux colonnes n'ont plus aucune cellule colorisé en Rouge alors ON peux activé le curseur rouge.
Merci pour ton aide, un bon dimanche a toi.
Cdlt Raymond
Merci pour ta réponse,
Je comprends bien mais ce n'ai pas toujours facile d'écrire ce que l'on souhaite et toi de bien comprendre ce que je voudrais réaliser, surtout quand la demande est mal formuler, désolé.
Donc, une fois terminer la recopie d'une ou des formules qui se sont trouvé effacer dans les colonnes (E et F).
Je souhaiterais svp effectuer un test sur les colonnes (E et F).
Je voudrais faire ré apparaitre le curseur rouge en étant sur que les colonnes (E et F) ne comporte plus de cellules colorisés en rouge.
Ma pensée Ex:
Tant qu'une des deux colonnes a encore une ou des cellules colorisé en Rouge alors on ne ré active PAS le curseur rouge.
Si les deux colonnes n'ont plus aucune cellule colorisé en Rouge alors ON peux activé le curseur rouge.
Merci pour ton aide, un bon dimanche a toi.
Cdlt Raymond
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
Modifié le 4 nov. 2018 à 19:40
Modifié le 4 nov. 2018 à 19:40
essayons: nous avons un ordinateur et une personne. appelons-les "Excel" et "Ray". aucun des deux ne s'appelle "je".
Excel est programmé pour réagir d'une certaine façon à ce que fait Ray.
Tu voudrais changer cette façon de réagir.
Je pense avoir compris que:
1° pour le moment, Excel met toujours une bordure rouge autour de la cellule active
2° tu voudrais que, si une des cellules des colonnes E ou F est colorée en rouge, Excel ne mette plus de bordure rouge autour de la cellule active.
ai-je bien compris?
si oui, il changer la programmation de Excel, pour qu'il vérifie si il y a du rouge en E ou F, et décide, en fonction de cela, d'afficher ou pas la bordure rouge.
on s'éloigne de plus en plus de ta demande initiale.
Excel est programmé pour réagir d'une certaine façon à ce que fait Ray.
Tu voudrais changer cette façon de réagir.
Je pense avoir compris que:
1° pour le moment, Excel met toujours une bordure rouge autour de la cellule active
2° tu voudrais que, si une des cellules des colonnes E ou F est colorée en rouge, Excel ne mette plus de bordure rouge autour de la cellule active.
ai-je bien compris?
si oui, il changer la programmation de Excel, pour qu'il vérifie si il y a du rouge en E ou F, et décide, en fonction de cela, d'afficher ou pas la bordure rouge.
on s'éloigne de plus en plus de ta demande initiale.
Salut yg_be
Fini, stop
Je vais pas t'écrire des romans a chaque fois que je fais une demande qui en soit n'ai si compliquer comme tu le prétemps.
J'ai fini par trouver.
Merci pour l'aide déjà apporter
Ray
Fini, stop
Je vais pas t'écrire des romans a chaque fois que je fais une demande qui en soit n'ai si compliquer comme tu le prétemps.
J'ai fini par trouver.
Merci pour l'aide déjà apporter
Ray
yg_be
Messages postés
23352
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
27 novembre 2024
1 554
Modifié le 4 nov. 2018 à 19:40
Modifié le 4 nov. 2018 à 19:40
super, peux-tu alors marquer comme résolu?