Bonjour le forum
Fort des réponses apportées il y a peu, je continue mon premier programme sérieux.
Je bloque sur un nouveau point. Tant sur la technique que sur la compréhension du fonctionnement.
Je voudrais activer une feuille à partir d'une cellule précise.
La condition étant que le contenu (Agent1) de la cellule (B4) correspond au nom de la feuille.
J'en suis là actuellement, car je suppose qu'il faut introduire une variable :
Private Sub Worksheet_Activate()
Dim Agent1 As String
Agent1 = ActiveSheet.Range(B, 4).Value
If Not Intersect(Target, Range(B, 4)) Is Nothing Then
Sheets(Agent1).Activate
End If
End Sub
Évidemment cela ne fonctionne pas (erreur 1004). En plus je ne comprend pas le "If not intersect".
😕 Peut-on m'expliquer ?
Cela réparé et compris, j'aimerai étendre ce principe à plusieurs cellules dont le contenu correspond à chaque fois au nom d'une feuille.
😕Suffit-il de faire un copier/coller de la première macro, en adaptant la référence de la cellule et en nommant une nouvelle variable "Agent2" par exemple ?
Pour l'instant j'ai opté pour un simple clic -Private Sub Worksheet_Activate()-
😕Si je décide de lancer la macro sur un double clic, puis-je seulement modifier la 1ère ligne sans modifier le reste, avec ceci ?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
J'espère avoir été clair dans mes propos.
Sinon, dites moi ce qu'il vous manque comme info.
Merci !
Fort des réponses apportées il y a peu, je continue mon premier programme sérieux.
Je bloque sur un nouveau point. Tant sur la technique que sur la compréhension du fonctionnement.
Je voudrais activer une feuille à partir d'une cellule précise.
La condition étant que le contenu (Agent1) de la cellule (B4) correspond au nom de la feuille.
J'en suis là actuellement, car je suppose qu'il faut introduire une variable :
Private Sub Worksheet_Activate()
Dim Agent1 As String
Agent1 = ActiveSheet.Range(B, 4).Value
If Not Intersect(Target, Range(B, 4)) Is Nothing Then
Sheets(Agent1).Activate
End If
End Sub
Évidemment cela ne fonctionne pas (erreur 1004). En plus je ne comprend pas le "If not intersect".
😕 Peut-on m'expliquer ?
Cela réparé et compris, j'aimerai étendre ce principe à plusieurs cellules dont le contenu correspond à chaque fois au nom d'une feuille.
😕Suffit-il de faire un copier/coller de la première macro, en adaptant la référence de la cellule et en nommant une nouvelle variable "Agent2" par exemple ?
Pour l'instant j'ai opté pour un simple clic -Private Sub Worksheet_Activate()-
😕Si je décide de lancer la macro sur un double clic, puis-je seulement modifier la 1ère ligne sans modifier le reste, avec ceci ?
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
J'espère avoir été clair dans mes propos.
Sinon, dites moi ce qu'il vous manque comme info.
Merci !