Bonjour tout le monde
Je suis débutant en vba et mon probleme est le suivant:
Dans une feuille nommée "Formulaire de saisie" j'ai crée un Userform avec un certain nombre de textbox pour faciliter la saisie...jusqu'a la tout va bien.
La complexité apparaisse quand j'ai essayé d’utiliser un textbox dans le meme userform pour alimenter une autre feuille nommée "Sous produit".
En effet, dans la feuille "Sous produit", il ya deux variable "le mois" et le nom de "Famille produit"
l'idée c est qu'une fois appuyer sur le bouton "transférer"de l'Userform, le nom de sous produit (ex: Produit A) doit apparaître DEUX FOIS consécutifs dans la feuille "SOUS PRODUIT" sous le mois et le produit qui lui corresponds(Cellule D3 et H3 de la feuille Formulaire de saisie)..
J'ai reussi a faire tourner le code ci-dessous sauf que je rencontre 2 problemes
1-il insere deux lignes au dessous de la famille-produit et introduit le sous-produit...donc a la fin de saisie je me retrouve avec le sous produit 1 qui est saisie au depart en bas de la liste
2- je veux eviter qu'il insere des lignes..a cause des formules
en gros je veux une simple couper/coller en cascade dans la ligne A du feuille sous produit sans inserer des lignes
voila le code
Option Explicit
Private Sub CommandButton1_Click()
Dim x, m, c, d As Long, firstaddress, SecondAddress, Sous_produit As Long
With Worksheets("Sous_produit")
x = .Range("C1")
m = .Range("B1")
End With
With Worksheets("Sous_produit").Range("A:A")
Set c = .Find(m, LookIn:=xlValues, Lookat:=xlWhole)
If Not c Is Nothing Then
firstaddress = c.Address
End If
Set c = .Find(x, after:=Range(firstaddress), LookIn:=xlValues, Lookat _
:=xlPart)
d = c.Row + 1
Rows(d).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Rows(d).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
.Cells(d, 1) = Controls("Textbox1")
.Cells(d + 1, 1) = Controls("Textbox1")
End With
Unload Me
End Sub
ci-joint le fichier
merci pour l aide