Onglet et valeur cellule

Résolu
Bonjour,

Voila je cherche à remplacer dans ma macro le numero de l'onglet par une valeur de cellule
exemple
Worksheets(5)
J'aimerai plutôt ecrire dans ma macro :
Worksheets(valeur cellule de la colonne à gauche)
je précise que l'on nom de l'onglet porte le meme nom que le texte de la cellule

SVP quelqu'un peut m'aider ?

7 réponses

  1. Bonjour,

    Un exemple :

    Sub Test()
    Dim NomFeuille As String
    NomFeuille = Worksheets("Feuil1").Range("A1").Value
    Worksheets(NomFeuille).Activate
    End Sub


    A+
    0
    1. merci gyrus pour ton aide

      c 'est tout a fait dans ce sens la mais j'ai 350 ligne et il me faudrait qu'une seule macro!

      en fait .range ("a1") = j'aimerai plutôt ecrire (cellule à gauche de la cellule active)

      comme par exemple (activeCell, Cell.Offset(0, -1).value

      un truc dans ce genre!!!!on y est presque lol

      i =  Cell.Offset(0, -1).
      Worksheets(i).Delete
      0
      1. ca l'air bien ca mais toujours coincé avec ce ""A1"

        For Each onglet In Worksheets
        If onglet.Name = Range("A1") Then
        onglet.Delete
        Exit Sub
        End If
        Next
        0
        1. Je ne comprends pas.
          Tu as 350 feuilles à effacer ?

          S'il s'agit simplement d'effacer la feuille dont le nom est à gauche de la cellule active, tu peux te contenter de
          Worksheets(ActiveCell.Offset(0, -1).Value).Cells.Delete


          A+
          0
          1. merci Gyrus

            c 'est bien le code que je recherche mais il fonctionne pas....il ne supprime pas la feuille!

            Voici la solution : j'ai viré ".cells"

            Worksheets(ActiveCell.Offset(0, -1).Value).Delete


            j'ai une autre énigme si tu veux bien m'aider....

            si je clique sur une cellule et qu'il y a du texte je voudrais déclencher une macro et si la cellule est vide ne rien faire....ca existe ca?
            0
            1. Contributeur
              Bonjour,

              Sur colonne B et ligne >1 :
              Private Sub Worksheet_SelectionChange(ByVal Target As Range)
                  If Not Intersect(Target, [B:B]) Is Nothing And Target.Row > 1 And Target <> "" and target.count = 1 Then ma_macro
              End Sub 

              eric

              En essayant continuellement, on finit par réussir.
              Donc plus ça rate, plus on a de chances que ça marche.(les Shadoks)
              En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
              0
              1. Merci Eric c'est cool...
                Bonne fin de semaine et encore un grand merci

                Grace à vous, de jour en jour mon ignorance s'éloigne. Cela laisse plus de place à la bétise.Merci Merci
                0