Userform et transport de données
bonjours ,je suis coincé avec un userform depuis un bon mois au moins , et là j'en ai un peu marre voila le problème:
je tente de prendre des infos dans la feuille "base de donnée" pour les transporté dans la feuille "résultat"
mais a partir d'un userform ( visuel oblige)
je n'arrive pas a ne serais ce que déclaré mes variables correctement , j'ai l'erreur 1004 qui ce pointe quasiment tout le temps et quand ce n'est pas elle c'est lerreur 9.
je vous mets le code ainsi qu'un fichier joint:
Option Explicit
Dim plagedim As Range
Dim plagefam As Range
Dim col1 As String
Dim col2 As String
Dim D As Integer
Sub UserForm_Initialize()
'conforme le usf en forme
Me.Move 90, 550, 265, 140
'active par défault la page 1 du multipage
Multi_collier.Value = 0
'variables du Usf
Set plagedim = Worksheets(2).Range("H2", Sheets(2).[H2].End(xlDown))
Set plagefam = Worksheets(2).Range("Z1", Sheets(2).[Z1].End(xlDown))
col1 = "Collier Vis"
col2 = "Collier Agraffe"
D = 75
End Sub
Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
'désactive la croix en haut a droite de la fenêtre
If CloseMode = 0 Then Cancel = True
End Sub
Sub boot_vis_75_Click()
'déclaration des variables fixes
Dim C As Range
Dim C2 As Range
Dim i As Integer
With ActiveWorkbook.Worksheets(2).Range("plagefam")
Set C2 = Cells.Find(col1, , LookIn:=xlValues)
End With
i = i + 1
'annulation du visuel et selection de la BD
Application.ScreenUpdating = False
'conditionnement de cr1 et envoie de la boucle
For Each C In Range("plagedim")
If C.Value <= D And C2 = col1 Then
C.EntireRow.Select
C.EntireRow.Copy
'retour du visuel activation de la feuille résultat
Application.ScreenUpdating = True
Sheets("résultat").Select
ActiveSheet.Range("Ai").Select
C.EntireRow.PasteSpecial
Else
Sheets("base de donnée").Visible = False
Sheets("index").Select
Application.ScreenUpdating = True
MsgBox ("pas de produit demandé!!")
End If
Next C
'fermeture du userform
Unload Me
End Sub
merci beaucoup d'avance de votre aide!!!!
Bonjour,
Normal ton souci puisque dans la sub intialize, tu parles de worskheet(2) qui correspond à la feuille "Index". Si tu remplaces le 2 par "base de donnée", cela va déjà mieux.
Mais au delà de ce premier point, je ne comprends pas pourquoi tu utilises des userforms pour ne mettre qu'un bouton et de surcroit d'utiliser le multipage.
Tu pars de ta feuille Index pour lancer une userform avec 1 bouton seul qui lui va servir à lancer une deuxième Userform
Pourquoi tu n'exécutes pas les taches directement depuis le bouton qui se trouve sur ta feuille index et ce, sans utiliser les userforms ???
Cela me parait un peu compliqué. ...
A te relire
Bonjour
Bonjour Dan
Le travail (pas le bon mot) que j'ai fait
merci beaucoup cela correspond bien a mon besoin, par contre cela écrasera systématiquement le résultat d'avant avec le résultat suivant si je recommence une recherche.
pour la multitude de userform , c'est que le client veut absolument des choses visuelles.