eastpeople
Messages postés105Date d'inscriptiondimanche 16 décembre 2007StatutMembreDernière intervention11 novembre 2008
-
11 nov. 2008 à 13:44
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 2016
-
13 nov. 2008 à 14:55
Bonjour, je vous écris car je n'arrive pas à rectifier mon code.
Mon probleme est:
J'ai un userform nommé Produit, dans ce user form je rentre dans un textbox un nom de produit qui se range dans la cellule A2 de la feuille ProduitS. Et j'aimerai que quand il y a quelque chose dans la cellule A2 de la feuille ProduitS dans la cellule H1 de la feuille Entrepot il y ai marqué "Stock" suivi du contenu de la cellule A2 de la feuille ProduitS. Sur cela j'ai fait une marcro enregistrée que j'ai intégrer dans le code du bouton Suivant du user form Produit. Cela marche mais le problème c'est que si j'ajoute un autre produit dans le userform Produit, la valeur se met dans A3 de la feuille ProduitS (jusqu'a là tout va bien) mais dans la feuille Entrepot, il colle dans la cellule I1 la même chose que la cellule H1 alors que je voudrais qu'il y ai marqué "Stock" et le contenu de A3 de la feuille ProduitS. Voila mon code
Sub Stocks()
Sheets("Produits").Select
Sheets("Entrepots").Select
Columns("H:H").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveCell.FormulaR1C1 = "=""Stocks ""&(Produits!R[1]C[-7])"
Columns("H:H").Select
Range("H2").Activate
Columns("H:H").EntireColumn.AutoFit
Range("G4").Select
End Sub
Je vois bien que mon code n'est pas correct, mais je n'arrive pas à en trouver un autre.
J'espère que j'ai bien expliqué mon problème.
Merci de votre aide.
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 11 nov. 2008 à 16:29
Bonjour,
Sub Stocks()
' Récupère le contenu de la dernière cellule de la colonne A
contenuA2 = Sheets("Produits").Range("A65536").End(xlUp).Value
If contenuA2 <> "" Then 'Test si le contenu est vide ou pas
' si pas vide alors
With Sheets("Entrepots")
nblig = .Range("H65536").End(xlUp).Row + 1
.Range("H" & nblig).Value = "Stock : " & contenuA2
.Columns("H:H").EntireColumn.AutoFit
End With
End If
End Sub
Par contre l'histoire ne dit pas si il est important que le numéro de ligne de la colonne A de produits, doit être identique à H dans Entrepot... Ici, on rempli au fur et mesure, dans la dernière cellule vide.
kartouche04
Messages postés10Date d'inscriptionmardi 11 novembre 2008StatutMembreDernière intervention15 novembre 2008 11 nov. 2008 à 18:40
Bonsoir, le code que vous m'avez donné marche pour copier les données dans les cellule H2 à H4 par ex en colonne et j'aurais voulu les copier dans les cellules de H1 à K1 par ex en ligne. Cela est-il possible?
Merci d'avance
kartouche04
Messages postés10Date d'inscriptionmardi 11 novembre 2008StatutMembreDernière intervention15 novembre 2008 12 nov. 2008 à 20:45
Merci beaucoup. Cela est-il possible que je modifie le code pour intégrer un prefixe dans les cellules? Je voudrais que quand il colle les cellules il rajoute "Stock" devant.
Merci de votre réponse.
us_30
Messages postés2065Date d'inscriptionlundi 11 avril 2005StatutMembreDernière intervention14 mars 201610 13 nov. 2008 à 14:55
Bonjour à tous,
Pour :
"j'aurais voulu les copier dans les cellules de H1 à K1 par ex en ligne."
Exemple de code :
Sub Stocks()
' Récupère le contenu de la dernière cellule de la colonne A
contenuA2 = Sheets("Produits").Range("A65536").End(xlUp).Value
If contenuA2 <> "" Then 'Test si le contenu est vide ou pas
' si pas vide alors
With Sheets("Entrepots")
nbcol = .Range("IV1").End(xlToLeft).Column
If nbcol > 7 Then
.Range("IV1").End(xlToLeft).Offset(0, 1).Value = "Stock : " & contenuA2
Else
.Range("H1").Value = "Stock : " & contenuA2
End If
End With
End If
End Sub