Ajout de X colonnes

Bonjour,

Je souhaite avoir un fichier avec en colonne A du texte, en B du texte aussi, et en C un nombre et selon ce nombre des colonnes seront crées, ces colonnes seront pré-alimentées avec une liste déroulante.

Pouvez-vous m'aider à réaliser cela?

Merci.

Salut jUMPOFF,

t'inquiète pas pour tes colonnes, elles sont déjà là : 16.000 ! Assez ?

Dis-nous plutôt, via un fichier représentatif, ce que tu souhaites y faire et surtout, comment !?

A+

Salut jUMPOFF,

t'inquiète pas pour tes colonnes, elles sont déjà là : 16.000 ! Assez ?

Dis-nous plutôt, via un fichier représentatif, ce que tu souhaites y faire et surtout, comment !?

A+

Merci pour ton retour.

En fait c'est pour une vente éphémère de vêtements. J'ai besoin de recenser les ventes (email de la personne, vêtements achetés et taille), tout cela sur une même ligne. L'objectif est que les vêtements soient sous forme de liste, les tailles aussi.

Par exemple au niveau des colonnes

A

email de la personne

B

Nombre de vêtements achetés (en fonction de ce nombre disons par ex 2, alors 2 colonnes vont être pré-remplies avec les listes, enfin plutôt 4 car 1ère colonne concernera le premier vêtements acheté, 2eme colonne la taille de celui-ci, 3eme 2ème vêtement acheté, 4eme taille du 2ème vêtement.

Donc colonne C

liste des vêtements

Colonne D

Liste des tailles.

J'espère que je suis pas trop flou dans mes explications.

En cours...

mais cool, hein c'est dimanche pour tout le monde !

A+

Salut,

Si j'ai bien compris tu veux des listes déroulantes en cascades ?

Tu peux nous donner les différentes listes et leurs valeurs dans un fichier ?

Je laisse curulis passer par VBA moi je vais faire les formules

Bon dimanche !

Bonjour,

tu devrais plutôt mettre 1 ligne par commande, en Tableau (crée 1 ligne avec listes déroulantes et formules s'il y a, puis 'Insertion tableau'). A l'ajout d'une ligne la liste déroulante se mettra toute seule.

Faire un simple TCD pour sortir l'analyse :

Tableau Croisé Dynamique (TCD) : http://www.mdf-xlpages.com/modules/smartsection/item.php?itemid=109

0 formule, 0 VBA

eric

En fait tant qu'on aura pas un fichier avec ce qu'elle souhaite on ne pourras que faire des suppositions ...

Donc je renouvelle la demande de Curulis

Salut jUMPOFF,

Salut l'équipe des as

me suis encore pris au jeu...

Une idée venant après l'autre, vous savez ce que c'est...

Bref, à part un petit module pour calculer la monnaie à rendre lors d'un achat, ça devrait le faire!

Comment ça marche , ce truc ?

- tu as deux feuilles

* STOCK pour y encoder ton stock de vêtements sur 3 colonnes

A. l'intitulé du vêtement et sa taille séparés d'un slash : Pantalon/XL (pas obligé de préciser une taille si pas d'objet) ;

B. le prix du vêtement (2 décimales) ;

C. le nombre de pièces disponibles à la vente.

* VENTE où tu encodes tes ventes

A. pour l'adresse email ;

B. tu voulais pouvoir spécifier le nombre de pièces vendues par client. Au départ, cela sert surtout à maîtriser les bordures et l'éventuelle création des en-têtes de colonnes qui vont par paire comme tu le souhaitais (Vêtement, Taille).

Si, dans la fièvre d'achat, ton client achète plus de pièces que de colonnes déjà mises en forme, tu y tapes ce nombre pour actualisation des bordures (c'est juste cosmétique!).

En [B1], le total de pièces vendues lors de la vente ;

C. le montant de chaque vente et en [C1], le montant total récolté ;

( D. confort d'affichage pour les bordures ; )

A partir de [E], par paires, les colonnes de détail des marchandises vendues.

Petit bémol, je n'ai pas prévu de pouvoir acheter plusieurs pièces identiques dans la même cellule : faudra, dans ce cas, encoder chaque pièce séparément de colonne en colonne!

(quoique, en réfléchissant tout en écrivant, j'ai trouvé un moyen facile... mais faudra patienter! )

  • en cliquant sur une colonne-vêtement, une liste de validation se pose sur la cellule avec la liste triée des vêtements dont le stock n'est pas à 0 ;
  • le choix d'un vêtement dans la liste actualise le stock, montant de la vente et le total général.
C'est ici aussi que le nombre de pièces vendues est mis à jour malgré le chiffre que tu as encodé au départ en [Bxxx].
Range("B" & iRow).Value = WorksheetFunction.CountA(Range("E" & iRow).Resize(1, Cells(iRow, Columns.Count).End(xlToLeft).Column).SpecialCells(xlCellTypeConstants)) / 2

En effet, en re-cliquant sur un vêtement vendu, la vente est annulée : le nombre de pièces vendues, le stock et le montant de la vente sont mis à jour.

- si tout est vendu, une MsgBox s'affiche pour te le signaler.

Bon, n'étant pas commerçant moi-même, teste et re-teste, bien sûr!

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'
Dim rCel As Range, iRow%, iRowA%, iCol%
'
iRow = Target.Row
iCol = Target.Column
If Selection.Count > 1 Then Exit Sub
On Error Resume Next
Application.EnableEvents = False
Application.ScreenUpdating = False
'
Cells.Validation.Delete
'
If iCol > 4 And iRow > 1 And iCol Mod 2 = 1 And iRow <= Range("A" & Rows.Count).End(xlUp).Row And Worksheets("Stock").Range("A2").Value <> "" Then
    If Range("B" & iRow) <> "" Then
        With Worksheets("Stock")
            If Target <> "" Then
                sItem = Target & IIf(Target.Offset(0, 1) = "-", "", "/" & Target.Offset(0, 1))
                Set rCel = .Range("A:A").Find(what:=sItem, lookat:=xlWhole, LookIn:=xlValues)
                Range("C" & iRow).Value = CDec(Range("C" & iRow).Value) - CDec(rCel.Offset(0, 1).Value)
                rCel.Offset(0, 2).Value = CInt(rCel.Offset(0, 2)) + 1
                Target.Resize(1, 2) = ""
                Range("B" & iRow).Value = WorksheetFunction.CountA(Range("E" & iRow).Resize(1, Cells(iRow, Columns.Count).End(xlToLeft).Column).SpecialCells(xlCellTypeConstants)) / 2
            End If
            iRowA = .Range("A" & Rows.Count).End(xlUp).Row
            .Range("A1:C" & .Range("A" & Rows.Count).End(xlUp).Row).Sort key1:=.Range("C2"), order1:=xlDescending, Orientation:=xlTopToBottom, Header:=xlYes
            Set rCel = .Range("C:C").Find(what:=0, lookat:=xlWhole, LookIn:=xlValues, searchdirection:=xlNext)
            If Not rCel Is Nothing Then iRowA = rCel.Row
            iRowA = IIf(iRowA = 0, .Range("A" & Rows.Count).End(xlUp).Row, iRowA - 1)
            If iRowA > 2 Then .Range("A1:C" & iRowA).Sort key1:=.Range("A2"), order1:=xlAscending, Orientation:=xlTopToBottom, Header:=xlYes
        End With
        If rCel Is Nothing Or iRowA > 1 Then
            Target.Validation.Add Type:=xlValidateList, Formula1:="=Stock!A2:A" & iRowA
        Else
            MsgBox "Le stock de marchandises est entièrement vendu !", vbInformation + vbOKOnly, "Flash - Info"
        End If
    Else
        Range("B" & iRow).Select
    End If
Else
    If iRow > Range("A" & Rows.Count).End(xlUp).Row Then Range("A" & Range("A" & Rows.Count).End(xlUp).Row + 1).Select
End If
'
Application.EnableEvents = True
Application.ScreenUpdating = True
On Error GoTo 0
'
End Sub
12jumpoff.xlsm (34.89 Ko)

Bonjour,

Merci énormément pour vos retour et désolé de mon retour tardif.

@curulis57 ton fichier est quasi parfait. J'ai simplement un dérangement, la liste déroulante est extrêmement conséquente car chaque produit y apparait 4 fois dans mon cas, pour la taille S/L/M et XL.

J'en demande beaucoup mais serait-il possible d'avoir la liste déroulante uniquement avec le nom du vêtement, et la colonne d'après une liste déroulante des tailles. Il y aurait donc deux choix à faire mais cela permettra d'aller beaucoup plus vite dans le remplissage du tableau le jour J.

Merci énormément.

Salut jUMPOFF,

l'adaptation est bien avancée...

Pour quand , au plus tard, te faut-il ce fichier ?

A+

Bonjour,

Mon popup store est Samedi sur Paris.

Merci.

Salut jUMPOFF,

OK, ça devrait le faire : je termine ça aujourd'hui, probablement fin de soirée, tests compris.

A+

Salut jUMPOFF,

OK, ça devrait le faire : je termine ça aujourd'hui, probablement fin de soirée, tests compris.

A+

Merci énormément.

Salut jUMPOFF,

J'ai oublié les multi-achats du même vêtement... Plus le temps, je suppose...

Fonctionnement

Feuille 'STOCK'

  • pas toucher à la colonne [B:B] : elle n'est pas ainsi par hasard...
  • d'abord, compléter ta liste de vêtement en [A:A]. Tu peux taper en minuscule, la macro se charge de mettre les majuscules et de trier [A:A]. A droite, tu verras des colonnes se créer pour renseigner tes tailles, prix et stock ;
  • un double-clic en [A:A] sur un libellé t'envoie directement sur les colonnes "Taille-Prix-Stock" du produit ;
  • si tu veux corriger un libellé de vêtement en [A:A], la correction se répercutera sur la ligne 1 (mais pas dans la feuille 'Vente' : si tu corriges quand la vente a commencé, tu auras deux orthographes différentes -> problèmes si tu veux annuler une vente) ;
  • 15 emplacements (cosmétiques) de taille : suffisant. Ça peut dépasser le cadre, pas de souci ;
  • si un vêtement n'a pas de taille, indique "!" dans la colonne "Taille".
Feuille 'VENTE'
  • d'abord renseigner l'adresse mail en [A:A] ;
  • puis le nombre de produits vendus en [BB:B]. Ça, c'est vraiment anecdotique car tu n'es pas obligé de remplir les cases prévues
par ce chiffre. C'est cosmétique pour ne pas créer des colonnes inutiles (j'ai parfois de drôles d'idées!) ;
  • des listes de validation se posent là où il faut pour choisir le vêtement et la taille. C'est le choix de la taille qui calcule Prix et Stock ;
  • recliquer sur un vêtement ou une taille déjà renseignés annule cette vente pour un nouveau choix ;

Elle commence quand, ta vente ?

EDIT : Reste en ligne, aujourd'hui : je finalise une version multi-achats même produit...

Le petit bouton rouge efface tout ça pour une nouvelle session de vente.

Bon courage!

A+

4jumpoff.xlsm (68.67 Ko)

C'est magnifique, merci beaucoup.

L'ouverture du site web à lieu demain et nous faisons un popup store sur Paris ce Samedi.

J'ai une ultime requête, est-il possible de tout décaler d'une colonne, en fait j'ai besoin que la colonne A soit vide. Enfin je dois y insérer un HASHTAG car ça fait partie du principe de notre marque.

Ci-dessous une petite présentation de notre marque. (ah mince je ne peux pas ajouter de lien complet il faut y ajouter le lien de youtube devant)

watch?v=u6mz7HqTJ70

Encore une fois merci énormément de votre gentillesse. Nous allons pouvoir gérer le popup store comme il se doit.

Ah, ça, mon ami, il fallait le dire avant!

Je ne crois pas que j'aurai le temps de chipoter pour modifier TOUTES les références d'adressage !!

En colonne [D:D], il y a de la place si tu veux!

Je termine la version décrite dans mon post précédent...

A+

Salut jUMPOFF,

dernière version...

Les plus:

  • une 3e colonne pour ajuster le nombre de pièces identiques ;
  • quand tu choisis la taille, il considère automatiquement qu'il faut 1 pièce ;
  • si tu veux ajouter des pièces, tu inscris le nombre total désiré et tu valides ;
  • le nombre n'ira pas en-dessous de 1 ni au-delà du stock ;
  • un clic droit sur la cellule "Nombre" te donne le détail de cette vente et le stock disponible ;
  • pour supprimer la vente totalement, clic sur la cellule-Vêtement, pour supprimer la vente parce que la taille est erronée, clic sur la cellule-Taille ;
  • inscrire évidemment l'adresse mail en [B:B] (tout est décalé !)
  • pour le reste, relire les instructions des posts précédents.
  • ET... je t'ai mis ta colonne [A] libre pour ton Hashtag !

Teste vite car j'ai été vitesse grand "V" et ce serait idiot qu'il reste un bug...

Rechercher des sujets similaires à "ajout colonnes"