Commande adresse en VBA
Résolu
djca
Messages postés
26
Date d'inscription
Statut
Membre
Dernière intervention
-
djca -
djca -
Bonjour,
j'écris une macro commande pour remplir un tableau d'astreinte
la macro-commande fonctionne avec coloration de la cellule dès que celle-ci est sélectionnée et après appui sur l’icône « Jour »
je veux améliorer la macro-commande permettant à celle-ci de s'exécuter que si je suis dans la bonne cellule : si je suis en E1 je suis sur une journée et je peux donc colorer
mais si je suis en F1 je suis sur une nuit et je ne veux pas que la macro se déclenche et je voudrai même un message d'erreur –
donc la macro-commande est écrite
ActiveCell.Range("A1").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 13395456
End With
ActiveCell.FormulaR1C1 = "J"
With ActiveCell.Characters(Start:=1, Length:=16).Font
.Size = 1
End With
Je n'arrive pas à écrire -- If… (si je suis en E1 ou G1 ou .. déclenchement de la macro mais si je suis si je suis en F1 ou H1 sortie de cette macro)
Un grand merci de votre aide
j'écris une macro commande pour remplir un tableau d'astreinte
la macro-commande fonctionne avec coloration de la cellule dès que celle-ci est sélectionnée et après appui sur l’icône « Jour »
je veux améliorer la macro-commande permettant à celle-ci de s'exécuter que si je suis dans la bonne cellule : si je suis en E1 je suis sur une journée et je peux donc colorer
mais si je suis en F1 je suis sur une nuit et je ne veux pas que la macro se déclenche et je voudrai même un message d'erreur –
donc la macro-commande est écrite
ActiveCell.Range("A1").Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 13395456
End With
ActiveCell.FormulaR1C1 = "J"
With ActiveCell.Characters(Start:=1, Length:=16).Font
.Size = 1
End With
Je n'arrive pas à écrire -- If… (si je suis en E1 ou G1 ou .. déclenchement de la macro mais si je suis si je suis en F1 ou H1 sortie de cette macro)
Un grand merci de votre aide
A voir également:
- Commande adresse en VBA
- Invite de commande - Guide
- Darkino nouvelle adresse - Guide
- Adresse mac - Guide
- Commande terminal mac - Guide
- Changer adresse dns - Guide
6 réponses
Bonjour
mais il existe des procédures 'macros événementielles qui se déclncheront toutes seules sans appui supplémentaire sur une icône.
Tu dis si ca t'intéresse
If ActiveCell.Address = "$E$1" Or ActiveCell.Address = "$G$1" Then '.... ton code Else MsgBox "perdu" exit sub End If
mais il existe des procédures 'macros événementielles qui se déclncheront toutes seules sans appui supplémentaire sur une icône.
Tu dis si ca t'intéresse
Re,
Si tu as une série de cellule valables par ex: E1,G1;I1...
cette variante t'évitera un code avec toute une série de OR....
Si tu as une série de cellule valables par ex: E1,G1;I1...
cette variante t'évitera un code avec toute une série de OR....
Sub cccc() Dim jour As Range Set jour = Union(Range("E1"), Range("G1"), Range("I1")) If Not Application.Intersect(Range(ActiveCell.Address), jour) Is Nothing Then MsgBox "gagné" Else MsgBox "perdu" Exit Sub End If End Sub
Bonjour
Je reviens sur l'écriture de la commande
mon problème est sur le nombre d'arguments
comment puis je écrire jour (Série dans colonne Q) jour1 (Série dans la colonne AE) ..
Dim jour As Range, jour1 As Range
Set jour = Union(Range("Q4"), Range("Q6"), Range("Q8")..)
(il n'est pas possible de mettre plus de 30 arguments !)
Set jour1 = Union(Range("AE4"), Range("AE6"), Range("AE8")..
là où je rencontre le problème cest que je ne sais pas écrire pour 2 ou plus d'arguments
If Not Application.Intersect(Range(ActiveCell.Address), jour) Is Nothing
j'ai essayé mais au pif et là cà blesse
If Not Application.Intersect(Range(ActiveCell.Address), jour or jour1) Is Nothing
encore merci de votre aide
Je reviens sur l'écriture de la commande
mon problème est sur le nombre d'arguments
comment puis je écrire jour (Série dans colonne Q) jour1 (Série dans la colonne AE) ..
Dim jour As Range, jour1 As Range
Set jour = Union(Range("Q4"), Range("Q6"), Range("Q8")..)
(il n'est pas possible de mettre plus de 30 arguments !)
Set jour1 = Union(Range("AE4"), Range("AE6"), Range("AE8")..
là où je rencontre le problème cest que je ne sais pas écrire pour 2 ou plus d'arguments
If Not Application.Intersect(Range(ActiveCell.Address), jour) Is Nothing
j'ai essayé mais au pif et là cà blesse
If Not Application.Intersect(Range(ActiveCell.Address), jour or jour1) Is Nothing
encore merci de votre aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Comme quoi il est + qu'utile de bien préciser ce que l'on veut dans dans sa demande...
si la série commence colonne E (non précisé) et se termine à la fin des colonnes (non précisé) et sur la ligne 1
Comme quoi il est + qu'utile de bien préciser ce que l'on veut dans dans sa demande...
si la série commence colonne E (non précisé) et se termine à la fin des colonnes (non précisé) et sur la ligne 1
With ActiveCell 'test = .Column If .Row = 1 And .Column >= 5 And .Column Mod 2 = 1 Then MsgBox "gagné" '..... le code Else MsgBox "perdu" Exit Sub End If End With