[RESOLU] sélection cellule par code name de la feuille

  • Initiateur de la discussion Initiateur de la discussion noviceAG
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

noviceAG

XLDnaute Impliqué
Bonjour,
Je souhaite afficher la feuille dont le code name est Etat et me positionner sur la 12ème lignes 37ème colonne mais ca bug ici : .Range(Cells(12, 37)).Select

Code:
Sub Ouvrir_Etat()
    Etat.Activate
     .Range(Cells(12, 37)).Select
End Sub

ps : je ne veux pas mettre directement la reference de la cellule AK12
Je vous remercie de bien vouloir me dire ou je pèche.
 
Dernière édition:
Re : sélection cellule par code name de la feuille

Non, là y a simplement une parenthèse en trop derrière Cells



Pourrais-tu m'expliquer cela, car j'avoue que je ne comprends pas. Je suis dur à la détente.
Vous vous plaigniez au départ d'une instruction Etat.Activate qui ne marchait pas. Je n'en voit pas dans l'image. Arrêtez d'envoyez des images dans des Excel sur ci-joint.fr: envoyez sur le forum des bouts de classeurs munis de code reproduisant ce qui ne marche pas.
À+
 
Dernière édition:
Re : sélection cellule par code name de la feuille

Sur ma feuille Etat j'ai ces codes :
Code:
Sub OuvrirJA()
    Dim wbk As Workbook, ja$, i%
    ja = "Journal des activités.xls"
    For i = 1 To Workbooks.Count
        If Workbooks(i).Name = ja Then
            Workbooks(i).Activate
            Exit Sub
        End If
    Next i
    Workbooks.Open ThisWorkbook.Path & "\" & ja
End Sub
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim ca As Range, vl As String, nchro() As String, nc() As String, r%, i%
    Set ca = Me.Range("AK12").MergeArea
    If Target.Address = ca.Address Then
        Application.ScreenUpdating = False
        OuvrirJA
        With ActiveWorkbook.Worksheets("Enrg")
            r = .Range("D65536").End(xlUp).Row
            ReDim nchro(r - 5)
            For i = 5 To r
                If .Cells(i, 1).Value = "RETARD" Or .Cells(i, 1).Value = "CRAC ?" Or .Cells(i, 2).Value = "X" Then
                    nchro(i - 5) = CStr(Format(.Cells(i, 4).Value, "000"))
                Else
                       nchro(i - 5) = "!"
                End If
            Next i
        End With
        nc = Filter(nchro, "!", False)
        ca.Validation.Modify xlValidateList, , , IIf(Join(nc) <> "", Join(nc, ","), "000")
        ThisWorkbook.Worksheets("Etat").Activate
        Application.ScreenUpdating = True
    End If
End Sub
dans un module ce code :
Code:
Sub Ouvrir_Etat()
    ThisWorkbook.VBProject.VBComponents("Etat").Activate
    Range("Activités").Select
End Sub
et la cellule "nommée" Activités n'est pas sélectionnée.
si je "bidouille" en vba, je n'y connais pas grand chose.
 
Dernière édition:
Re : sélection cellule par code name de la feuille

Extrait de l'aide:
VBComponent, objet





Représente un composant, tel qu'un module de classe ou un module standard contenu dans un projet.

Remarques

Utilisez l'objet VBComponent pour accéder au module de code associé à un composant ou pour modifier les valeurs de la propriété d'un composant.

Utilisez la propriété Type pour rechercher le type de composant auquel l'objet VBComponent fait référence. Utilisez la propriété Collection pour rechercher la collection dans laquelle se trouve le composant.
Qu'est-ce que ça a à voir avec le fait d'activer simplement la feuille aus sens d'Excel ? Rien ! d'ailleurs je n'ai même pas vu de méthode Activate pour ce type d'objet.

Etat.Activate marche obligatoirement si Etat est bien le CodeName de la feuille dans le projet Visual Basic contenant la macro.
 
Re : sélection cellule par code name de la feuille

Re,

Qu'est-ce que ça a à voir avec le fait d'activer simplement la feuille aus sens d'Excel ? Rien ! d'ailleurs je n'ai même pas vu de méthode Activate pour ce type d'objet.

fonctionne chez moi sous 2003... mais j'étais parti sur une fausse piste, le "codename" de la feuille à utiliser était stocké dans une cellule de feuille de calcul.... effectivement si "etat" est un codename, "etat.Activate" doit fonctionner dans ce même classeur...
 
Re : sélection cellule par code name de la feuille

Re

Je me retire sur la pointe des pieds
Et promets de ne plus jamais, au grand jamais, m'interesser à quiconque persiste à envoyer des images alors qu'il est si simple de creer une copie du fichier avec juste les elements necessaires à eclaircir le problème
 
Re : [RESOLU] sélection cellule par code name de la feuille

Bonsoir à tous
bien que le fil est résolu, je viens de revenir du boulot et oui j'ai mis une parenthèse de trop ,mon doigt a glisser
pas très grave,
mais c'est quand même un drôle de problème que je n'avais jamais rencontré.
je suis surpris
moi même je suis heureux de te voir sur excel download,cela veut dire que tu va mieux (enfin je pense)
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
652
Retour