Récupére données d'une feuille inactive dans userform

bonjour à tous,

j'ai un userform qui récupere les données d'une feuille active "cumul" , je veux récupére les données d'une autre feuille qui pas necessairement active.

j'ai essayé de remplacer ActiveCell.Offset par workbook("").worksheets("cumul").cells ça marche pas

merci de votre aide.

voici mon code :

Private Sub UserForm_Initialize()

   Me.system.List = Array("test", "Ge1")
   Me.statut.List = Array("To proceed", "In progress", "Terminated")

 '--  menu choix
   I = 0
   Do While Cells(I + 2, 1) <> ""
      Me.ChoixContract.AddItem Cells(I + 2, 1).Value
      Me.ChoixContract.List(I, 1) = Cells(I + 2, 1).Value
      I = I + 1
   Loop
 End Sub

Private Sub ChoixContract_Change()

Range("A2").Select
   ActiveCell.Offset(ChoixContract.ListIndex, 0).Select

   Me.Explication = ActiveCell.Offset(0, 2).Value
   Me.datej = ActiveCell.Offset(0, 3).Value

Private Sub B_validation_Click()

   ActiveCell.Offset(0, 64).Value = Me.TextBox6
   ActiveCell.Offset(0, 65).Value = Me.TextBox10
   ActiveCell.Offset(0, 66).Value = Me.appel2
   ActiveCell.Offset(0, 67).Value = Me.TextBox14
   ActiveCell.Offset(0, 68).Value = Me.appel3
   ActiveCell.Offset(0, 69).Value = Me.TextBox15
   ActiveCell.Offset(0, 70).Value = Me.unresolved
   ActiveCell.Offset(0, 71).Value = Me.TextBox16

Bonsoir

Un exemple

Ne pas oublier le . (point) devant la référence aux cellules de la page

  I = 0
  With Sheets("Autre_Feuille")
    Do While .Cells(I + 2, 1) <> ""
      Me.ChoixContract.AddItem .Cells(I + 2, 1).Value
      Me.ChoixContract.List(I, 1) = .Cells(I + 2, 1).Value
      I = I + 1
    Loop
  End With

merci pour la réponse .. ça marche pas il faut que j'active la feuille pour que le userform puisse lire les données.

Bonsoir

Etonnant n'est il pas vrai ?

Joins ton fichier anonymisé

Voici mon fichier . merci infinement.

92essai.xlsm (36.42 Ko)

Bonsoir

Banzai64 a écrit :

Ne pas oublier le . (point) devant la référence aux cellules de la page

Tu as oublié le point dans cette ligne

   Do While Cells(I + 2, 1) <> ""

Oui tu as raison... ca marche seulement pour la liste déroulante "ChoixContract" pour le reste des controles ca marche pas.

une fois choisir le n°contract les autres champs doivent etre remplis autamtiquement. voila!

salut le forum

Il faut désigner la feuille à utiliser

Private Sub ChoixContract_Change()
With Sheets("cumul")
   Me.datej = .Range("A2").Offset(ChoixContract.ListIndex, 2).Value
   Me.system = .Range("A2").Offset(ChoixContract.ListIndex, 3).Value
   Me.site = .Range("A2").Offset(ChoixContract.ListIndex, 4).Value
   Me.username = .Range("A2").Offset(ChoixContract.ListIndex, 5).Value
End With
' Suite du code

Mytå

WOW ça marche bien merci beaucoup

Rechercher des sujets similaires à "recupere donnees feuille inactive userform"