1 bouton pour plusieurs commandes simultanées
Bonjour,
Je reviens vers vous avec ce nouveau post pour vous demande encore un petit (ou gros) coup de main.
Mon problème recentrent était au niveau des liste déroulantes conditionnées .( problème résolue.
Néanmoins , j'ai une autre demande qui est toujours sur le même classeur.
Cette fois ci, c'est au sujet de l’élaboration d'une macro de copie coller (en soit pas trop compliqué...enfin presque...lol.) .
Seulement-là, il faut copier d'un tableau différentes information (cellule) dans d'autres tableaux qui se trouvent sur d'autres feuille du classeur.
J'ai mis en PJ mon fichier.(.xslm).
Il y a actuellement 3 boutons de commandes et c'est sur le troisième que j'aimerais avoir de l'aide.
Ce boutons devra effectuer plusieurs commande:
> Plusieurs copié-collé uniquement de cellules pleines((non-vide).
> Déverrouiller les cellules verrouillées et les reverrouiller ensuite en fin de process.
> et effacer les données se trouvant dans les cellules copiées.
J'ai mis des légendes dans le fichier joint.
J’espère ne pas avoir été trop brouillon.
Merci par avance
Cordialement
Manu.
PS; Je suis ouvert à toutes remarque et suggestion au niveau de l’esthétique de mon classeur....lol..
Bonjour,
...l’esthétique de mon classeur...
On se croirait dans la chambre de ma fille quand elle était ado
C'est bon...
A+
Bonjour Galopin01,
Que veux-tu , j'ai garder mon talent créatif de mes 5 ans ...
Re bonjour,
Sinon avez-vous une solution pour mon probleme ?
Bonjour à toutes et à tous,
Au cas ou vous ne vouliez pas télécharger mon fichier.Voici la macro ou je dois integrer les autres commandes.
Sub TEST0()
'
' TEST0 Macro
'
'Copie de la date dans dans l'onglet RECAP_VENTE_MENSUEL
Sheets("Tableau").Select
Range("S21").Select
Selection.Copy
Sheets("RECAP_VENTE_MENSUEL").Select
Range("A1").End(xlDown).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie resultat vente dans dans l'onglet RECAP_VENTE_MENSUEL
Sheets("Tableau").Select
Range("L21:Q21").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("RECAP_VENTE_MENSUEL").Select
Range("B1").End(xlDown).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
'Copie vente dans dans l'onglet ACHAT Client
Sheets("Tableau").Select
Range("A23:E23").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ACHAT Client").Select
Range("A1").End(xlDown).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie vente dans dans l'onglet ACHAT Client - Quantité
Sheets("Tableau").Select
Range("K23").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("ACHAT Client").Select
Range("F1").End(xlDown).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie vente dans dans l'onglet RECAP_VENTE_ANNUEL -
Sheets("Tableau").Select
Range("A23:Q23").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("RECAP_VENTE_ANNUEL").Select
Range("A1").End(xlDown).Offset(1, 0).Select
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
'Suppression des valeurs de Date -produit-typedeproduit-contenance-quantite-reduction
Sheets("Tableau").Select
Range("A23:Q23").Select
Application.CutCopyMode = False
Selection.ClearContents
End Sub
bonjour a toutes et à tous,
Bon bin , toujours pas de réponse ..
Tant pis je vais poster sur un autre forum pour voir si ils peuvent me répondre.
Je reste quand même parmi vous puisqu'il a de bon tuto.
Bonjour à tous,
Étant donné que galopin01 n'est pas revenu car il ne semble pas encore avoir réussi à convaincre sa fille de faire le ménage de sa chambre ...
Voici un essai ...
Sub TEST0()
Dim ShT As Worksheet
Dim ShRVM As Worksheet
Dim ShAC As Worksheet
Dim ShRCA As Worksheet
Dim DLig As Integer
Dim DLigT As Integer
Dim X As Integer
Set ShT = Worksheets("Tableau")
Set ShRVM = Worksheets("RECAP_VENTE_MENSUELLE")
Set ShAC = Worksheets("ACHAT Client")
Set ShRVA = Worksheets("RECAP_VENTE_ANNUELLE")
'Copie de la date dans dans l'onglet RECAP_VENTE_MENSUEL
DLig = ShRVM.Cells(Rows.Count, "A").End(xlUp).Row + 1
ShT.Range("S21").Copy
ShRVM.Range("A" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie resultat vente dans dans l'onglet RECAP_VENTE_MENSUEL
ShT.Range("L21:Q21").Copy
ShRVM.Range("B" & DLig & ":G" & DLig).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
DLigT = ShT.Cells(Rows.Count, "A").End(xlUp).Row
For X = 23 To DLigT ' boucle sur les lignes de la feuille tableau
If ShT.Range("A" & X) <> "" Then ' si A n'est pas vide ...
'Copie vente dans dans l'onglet ACHAT Client
ShT.Range("A" & X & ":E" & X).Copy
DLig = ShAC.Cells(Rows.Count, "A").End(xlUp).Row + 1
ShAC.Range("A" & DLig & ":E" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie vente dans dans l'onglet ACHAT Client - Quantité
ShT.Range("K" & X).Copy
ShAC.Range("F" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
'Copie vente dans dans l'onglet RECAP_VENTE_ANNUEL -
ShT.Range("A" & X & ":Q" & X).Copy
DLig = ShRVA.Cells(Rows.Count, "A").End(xlUp).Row + 1
ShRVA.Range("A" & DLig & ":Q" & DLig).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
End If
Next X
'Suppression des valeurs de Date -produit-typedeproduit-contenance-quantite-reduction
ShT.Range("A23:Q" & DLigT).ClearContents
End Sub
ric
Bonjour,
Bonjour ric : j'ai bien vu que tu venais de passer, je venais de terminer ma réponse après une 'tite semaine de vacances et j'ai du m'interrompre... Je laisse quand même mon commentaire...
Désolé si je t'ai un peu cassé le sujet ! Mébon... je considère que tu es bien mal parti et il faudrait attaquer le problème comme la chambre de ma fille : Tout par la fenêtre et repartir sur des bases saines.
Mais j'avoue que je n'ai pas de point de départ à te proposer car ce que tu as fait ne me permet pas de suivre un fil directeur :
Ta fiche client n'est pas une fiche client mais un embryon de base de donnée.
Ta BDD n'est pas une base de donnée mais une feuille de paramètres et le reste est très fouillis.
Tu sembles n'avoir aucune base de VBA, pas la moindre optimisation, que de l'enregistreur. Avec ça je ne sais pas quoi dire.
C'est tout sauf un problème d'esthétique. Donc : Jet de l'éponge !
On peut pas t'empêcher d'aller voir ailleurs si la cuisine est meilleure mais à mon avis les mêmes causes conduisant aux mêmes effets tu risques de tomber sur la même situation... Bon enfin c'est toi qui voit.
A+
SpoilerBonjour,
Bonjour ric : j'ai bien vu que tu venais de passer, je venais de terminer ma réponse après une 'tite semaine de vacances et j'ai du m'interrompre... Je laisse quand même mon commentaire...
Désolé si je t'ai un peu cassé le sujet ! Mébon... je considère que tu es bien mal parti et il faudrait attaquer le problème comme la chambre de ma fille : Tout par la fenêtre et repartir sur des bases saines.
Mais j'avoue que je n'ai pas de point de départ à te proposer car ce que tu as fait ne me permet pas de suivre un fil directeur :
Ta fiche client n'est pas une fiche client mais un embryon de base de donnée.
Ta BDD n'est pas une base de donnée mais une feuille de paramètres et le reste est très fouillis.
Tu sembles n'avoir aucune base de VBA, pas la moindre optimisation, que de l'enregistreur. Avec ça je ne sais pas quoi dire.
C'est tout sauf un problème d'esthétique. Donc : Jet de l'éponge !
On peut pas t'empêcher d'aller voir ailleurs si la cuisine est meilleure mais à mon avis les mêmes causes conduisant aux mêmes effets tu risques de tomber sur la même situation... Bon enfin c'est toi qui voit.
A+
Bonsoir galopin01,
Enfin une réponse constructive au bout du deuxième post.
- Ma connaissance excel et/ou vba est proche de 0 " comme je le dit dans ma présentation" -> c'est bien pour cela que je suis sur ce forum.
- J'apprend par moi-même en allant a la pèche au info et en me documentant pendant mon, petit temps libre.
- Pour l’esthétique ce n’était qu'a la base une boutade pour que personne ne s’arrête dessus ..mais bon.!!
- Le fait de jeter l’éponge - toi si tu veux mais pas moi.
- Pour ce qui est d'aller voir sur d'autres forum, il est tous simplement le fait de n'avoir eu quasiment aucunes réponses constructive, quelle soient positive ou négative comme la tienne sur mes deux post , (Malgré le nombre de vues)
- Je ne pense pas que tu soit la seule personne ayant des connaissances sur ce forum ?
SpoilerBonjour à tous,
Étant donné que galopin01 n'est pas revenu car il ne semble pas encore avoir réussi à convaincre sa fille de faire le ménage de sa chambre ...
Voici un essai ...
Sub TEST0() Dim ShT As Worksheet Dim ShRVM As Worksheet Dim ShAC As Worksheet Dim ShRCA As Worksheet Dim DLig As Integer Dim DLigT As Integer Dim X As Integer Set ShT = Worksheets("Tableau") Set ShRVM = Worksheets("RECAP_VENTE_MENSUELLE") Set ShAC = Worksheets("ACHAT Client") Set ShRVA = Worksheets("RECAP_VENTE_ANNUELLE") 'Copie de la date dans dans l'onglet RECAP_VENTE_MENSUEL DLig = ShRVM.Cells(Rows.Count, "A").End(xlUp).Row + 1 ShT.Range("S21").Copy ShRVM.Range("A" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'Copie resultat vente dans dans l'onglet RECAP_VENTE_MENSUEL ShT.Range("L21:Q21").Copy ShRVM.Range("B" & DLig & ":G" & DLig).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False DLigT = ShT.Cells(Rows.Count, "A").End(xlUp).Row For X = 23 To DLigT ' boucle sur les lignes de la feuille tableau If ShT.Range("A" & X) <> "" Then ' si A n'est pas vide ... 'Copie vente dans dans l'onglet ACHAT Client ShT.Range("A" & X & ":E" & X).Copy DLig = ShAC.Cells(Rows.Count, "A").End(xlUp).Row + 1 ShAC.Range("A" & DLig & ":E" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'Copie vente dans dans l'onglet ACHAT Client - Quantité ShT.Range("K" & X).Copy ShAC.Range("F" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'Copie vente dans dans l'onglet RECAP_VENTE_ANNUEL - ShT.Range("A" & X & ":Q" & X).Copy DLig = ShRVA.Cells(Rows.Count, "A").End(xlUp).Row + 1 ShRVA.Range("A" & DLig & ":Q" & DLig).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False End If Next X 'Suppression des valeurs de Date -produit-typedeproduit-contenance-quantite-reduction ShT.Range("A23:Q" & DLigT).ClearContents End Sub
ric
Bonjour Ric,
merci pour ton retour.
Je vais essayer de comprendre comment tu as fait et essayer ....
merci et bonne soiree
SpoilerBonjour à tous,
Étant donné que galopin01 n'est pas revenu car il ne semble pas encore avoir réussi à convaincre sa fille de faire le ménage de sa chambre ...
Voici un essai ...
Sub TEST0() Dim ShT As Worksheet Dim ShRVM As Worksheet Dim ShAC As Worksheet Dim ShRCA As Worksheet Dim DLig As Integer Dim DLigT As Integer Dim X As Integer Set ShT = Worksheets("Tableau") Set ShRVM = Worksheets("RECAP_VENTE_MENSUELLE") Set ShAC = Worksheets("ACHAT Client") Set ShRVA = Worksheets("RECAP_VENTE_ANNUELLE") 'Copie de la date dans dans l'onglet RECAP_VENTE_MENSUEL DLig = ShRVM.Cells(Rows.Count, "A").End(xlUp).Row + 1 ShT.Range("S21").Copy ShRVM.Range("A" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'Copie resultat vente dans dans l'onglet RECAP_VENTE_MENSUEL ShT.Range("L21:Q21").Copy ShRVM.Range("B" & DLig & ":G" & DLig).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False DLigT = ShT.Cells(Rows.Count, "A").End(xlUp).Row For X = 23 To DLigT ' boucle sur les lignes de la feuille tableau If ShT.Range("A" & X) <> "" Then ' si A n'est pas vide ... 'Copie vente dans dans l'onglet ACHAT Client ShT.Range("A" & X & ":E" & X).Copy DLig = ShAC.Cells(Rows.Count, "A").End(xlUp).Row + 1 ShAC.Range("A" & DLig & ":E" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'Copie vente dans dans l'onglet ACHAT Client - Quantité ShT.Range("K" & X).Copy ShAC.Range("F" & DLig).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False 'Copie vente dans dans l'onglet RECAP_VENTE_ANNUEL - ShT.Range("A" & X & ":Q" & X).Copy DLig = ShRVA.Cells(Rows.Count, "A").End(xlUp).Row + 1 ShRVA.Range("A" & DLig & ":Q" & DLig).PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _ xlNone, SkipBlanks:=False, Transpose:=False End If Next X 'Suppression des valeurs de Date -produit-typedeproduit-contenance-quantite-reduction ShT.Range("A23:Q" & DLigT).ClearContents End Sub
ric
Bonjour Ric,
merci pour ton retour.
Je vais essayer de comprendre comment tu as fait et essayer ....
merci et bonne soiree
Bonjour Ric,
Je viens d'essayer ta macro .Ça a fonctionné correctement
Maintenant je vais essayer d’intégrer deux autres fonctions
> le déverrouillage (de certaines cellules) avant opération "couper coller" de la macro puis le verrouillage".
> Dans l'onglet "RECAP_VENTE_MENSUELLE" ; il va falloir que je demande l'addition de chaque valeurs de chaque colonnes si la date est identique dans la colonne "A".
A mon avis , je vais revenir vers vous mais je vais quand même essayer.
Bonne journée.