Problème de macro

Résolu
Bonjour,
j'ai écris un bout de code, mais il y a une erreur, si quelqu'un peut m'aider merci.
c'est depuis un bouton qui se trouve dans un UserForm

'LbPage est définit ailleurs = un nom de page
'LbLigne est définit ailleurs =N° de ligne
'LbColonne est définit ailleurs = N° de colonne
'LbAdd est définit ailleurs = une cellule

Worksheets(LbPage.Caption).Range(Worksheets(LbPage.Caption).Cells(LbLigne.Caption, 11))(Worksheets(LbPage.Caption).Cells(LbLigne.Caption), Worksheets(LbPage.Caption).Cells(LbColonne.Caption)).Interior.Color = RGB(255, 255, 0)

merci d'avance

8 réponses

  1. Bonjour,

    Que voulez vous faire avec ce "code", je vois bien qu'il y de la couleur, mais ..?
    0
    1. La cellule ou je clique dessus ouvre un UserForm de la je clique sur un bouton
      La cellule ou j'ai cliqué est reconnu comme LbLigne donne son N° de ligne et LbColonne donne son N° de colonne.
      et j'aimerai que depuis le LBLigne et la colonne K jusqu'à la LbLigne,LbColonne(cellule ou j'ai cliqué pour ouvrir le UserForm) cette ligne ce mette en couleur
      0
      1. Re,

        Worksheets(LbPage.Caption).Range("K" & LbLigne.Caption).Resize(, LbColonne.Caption - 10).Interior.Color = RGB(255, 255, 0)
        0
    2. Magnifique ça fonctionne encore une question.

      'LbPage est définit ailleur = un nom de page
      'LbLigne est définit ailleur =N° de ligne
      'LbColonne est définit ailleur = N° de colonne
      'LbAdd est définit ailleur = une cellule
      'LbDernJour est définit ailleurs = derniere cellule a colorié (N°de la colonne) vu que la ligne est à la même que LbLigne

      La cellule ou je clique dessus ouvre un UserForm de la je clique sur un bouton
      La cellule ou j'ai cliqué est reconnu comme LbLigne donne son N° de ligne et LbColonne donne son N° de colonne.
      et j'aimerai que depuis le LbLigne et le LbColonne jusqu'à la LbLigne,LbDernJour cette ligne ce mette en couleur
      0
      1. Ma ligne de code est la suivante, mais elle ne fonctionne pas:
        Worksheets(LbPage.Caption).Range.Cells(LbLigne.Caption, LbColonne.Caption),Cells(LbLigne.Caption, LbDernJour.Caption).Interior.Color = RGB(255, 255, 0))

        Les données sont celle en dessus

        merci d'avance
        0
        1. Bonjour,

          Juste une question, vous utilisez le code de l'exemple que je vous ai donne pour recuperer l'adresse de la cellule
           AdCel=Target.Address
          ???

          Parce que vous compliquez la vie avec vos .caption des differents labels, vous decoder pour recoder une adresse !!!!!!!!!!!!!!!!!!!!!!

          Neanmoins:
          Worksheets(LbPage).Cells(LbLigne, LbColonne).Resize(, LbDernJour - LbColonne + 1).Interior.Color = RGB(255, 255, 0)
          
          0
      2. Merci, mais le code que vous m'avez donné donc:
        Worksheets(LbPage).Cells(LbLigne, LbColonne).Resize(, LbDernJour - LbColonne + 1).Interior.Color = RGB(255, 255, 0)

        Il me met le message d'erreur suivant:
        incompabilité de type
        0
        1. j'ai oublié oui j'utilise votre exemple
          0
          1. merci j'ai fais des modifs et ça marche.
            voici le code

            Worksheets(LbPage.Caption).Range(LbAdd.Caption).Resize(, LbDernJour.Caption - LbColonne.Caption + 1).Interior.Color = RGB(255, 255, 0)

            Ou peut on trouver un libre traitant de ces genres de code, pour apprendre

            Je veux encore vous dire un GRAND merci
            0
            1. Re,

              En effet l'erreur est pour moi, car pour simplifier j'ai utilise des variables, pas de labels

              Si vous utilisez "mon" code, vous avez deja l'adresse qui remplace LbAdd.Caption pour l'exemple precedent

              Worksheets(LbPage.Caption).Range(AdCel).Resize(, LbDernJour.Caption - LbColonne.Caption + 1).Interior.Color = RGB(255, 255, 0) 
              

              et

              Worksheets(LbPage.Caption).Range("K" & LbLigne.Caption).Resize(, LbColonne.Caption - 10).Interior.Color = RGB(255, 255, 0)

              devient:
              Worksheets(LbPage.Caption).Range("K" & LbLigne.Caption & ":" & AdCel).Interior.Color = RGB(255, 255, 0)


              Comment vous faites pour recuperer la ligne et la colonne de la cellules selectionnee ??
              0
          2. quand je fais mon double clic et ensuite je le met en caché dans mon UserForm
            ColorUserForm.LbLigne.Caption = Target.Row
            ColorUserForm.LbColonne.Caption = Target.Column
            0
            1. Re,
              Oui, l'essentiel c'est que cela vous convienne
              0
            2. @f894009Bonjour,
              Excuser moi encore.

              J'ai encore une demande.
              Je fais par un UserForm les demandes suivante, quand je clique pour l'ouvrir il me met la ligne =LbLignAbs et le nom de l'onglet =LbPage1 et ensuite je demande 2 choses

              et par la suite j'aimerai qu'il remplise les cellules depuis 1er jour(LbLignAbs,LbColAbsDeb) jusqu'au 2ème jour(LbLignAbs,LbColAbsFin)

              je vous ai mon code, l'erreur est sur Worksheets(LbPage1.Caption).Range(LbLignAbs.Caption - LbColAbsDeb.Caption).Resize(, LbLignAbs.Caption - LbColAbsFin.Caption + 1).Interior.Color = RGB(255, 255, 0)

              CODE
              le 1er jour et un 2ème jour qui se trouve sur la même ligne
              '1er jour pour la colonne
              For i = 11 To 41
              If TextBox1 = Cells(6, i).text Then
              LbColAbsDeb = i
              End If
              Next

              '2eme jour pour la colonne
              For i = 11 To 41
              If TextBox2 = Cells(6, i).text Then
              LbColAbsFin = i
              End If
              Next

              Worksheets(LbPage1.Caption).Range(LbLignAbs.Caption - LbColAbsDeb.Caption).Resize(, LbLignAbs.Caption - LbColAbsFin.Caption + 1).Interior.Color = RGB(255, 255, 0)

              merci d'avance encore une fois
              0