Macro / Script G-Sheet pour bon de commande

Bonjour,

Etant nouveau sur G-Sheets je cherche a re-créer un tableur pour générer des bon de commande que j'ai déjà en format Excel.

Mon problème concerne la macro qui gère tout ca.

Le principe est simple, j'ai des feuilles avec des listes d'objets, leurs noms, leurs ref', leurs prix, etc par colonnes. Avec une colonne qui indique le nombres d'objet a acheter, par exemple, la colonne K.

Le but est de récupérer sur une feuille "bon de commande" la liste de touts les articles de toutes les feuilles avec leurs ref et prix seulement, UNIQUEMENT si leurs case K est >0, donc qu'il faut en commander.

Je sait pas si mon explication est très clair, et je eut bien sûr apporter plus de précisions si c'est flou.

Je joint la macros que j'ai sur Excel et qui fait très bien le boulot, malheureusement je ne comprend pas tout et surtout je ne sait pas dans quelle mesure je peut adapter ca a G-Sheets, ni si G-Sheets contient un moyen de faire ca beaucoup plus simple ?

Sub Récupérer()

    listeF = Array("LAMPES", "CONSSO", "DISTRIB", "EQUIPEMENT", "PIECES", "GELAT", "WISHLIST")
    k = 0
    For i = 0 To UBound(listeF)
        tablo = Sheets(listeF(i)).Range("A4:K" & Sheets(listeF(i)).Range("A" & Rows.Count).End(xlUp).Row)
        For ln = 1 To UBound(tablo, 1)
            If tablo(ln, 11) > 0 Then
                ReDim Preserve tabloR(1 To 7, 1 To k + 1)
                For j = 1 To 5
                    colT = Choose(j, 2, 4, 9, 10, 11)
                    colC = Choose(j, 1, 2, 3, 4, 5)
                    tabloR(colC, 1 + k) = tablo(ln, colT)
                Next j
                k = k + 1
            End If
        Next ln
        Erase tablo
    Next i
    Sheets("COMMANDE").Range("A5").CurrentRegion.Offset(4, 0).ClearContents
    Sheets("COMMANDE").Range("A5").Resize(UBound(tabloR, 2), 5) = Application.Transpose(tabloR)
With [C3]
.Value = Now
.NumberFormat = "dd/mm/yyyy hh:mm"
End With

End Sub

Si quelqu'un a une solution miracle, je suis preneur, et si une âme charitable a le temps de m'expliquer comment faire sur G-Sheets, c'est encore mieux, que je comprenne ce que je fait !

Bonjour et bienvenue,

Il est fort probable qu'une grande partie de ta macro puisse être remplacées par des fonctions "simples", c'est une des qualités de GSheets. Du coup, on ne transpos pas la macro, sachant de plus que l langage VBA est propre à microsoft alors que Goggle utilise un langage de type javascript plus universel.

As-tu une maquette sous GSheets dont tu pourrais mettre le lien ? (pas le fichier excel) avec le résultat attendu.

Bonjour et merci pour ton retour.

Le lien du G-Sheets qui me sert de prototype :

https://docs.google.com/spreadsheets/d/1Tsgal3N5EXh9Pcl4OGtRSDE3JN6nz0fkwDWCT5x5ud4/edit?usp=sharing

J'y est mis des infos concernant le résultat attendu, pour info sur cette version, le déclencheur est : K>0

Merci.

On fait tout en une formule, c'est l'intérêt de QUERY

mais évite de fusionner des cellules

={"NOM"\"OPT"\"OPT"\"REF"\"NBR"\"€ TTC";
query('DISTRIB'''!A4:H;"select A, C, D, E, F, H where F>0");
query(GTL!A4:H;"select A, C, D, E, F, H where F>0");
query(BOX!A4:H;"select A, C, D, E, F, H where F>0");
query('APPA'''!A4:H;"select A, C, D, E, F, H where F>0");
query('CONSO'''!A4:H;"select A, C, D, E, F, H where F>0");
query('PROTEC'''!A4:H;"select A, C, D, E, F, H where F>0")
}

Ha oui en effet je vois bien le problème de mes séparateurs qui fusionnent la colonne F.

Je trouve ca tellement plus compréhensible que sur Excel au niveaux du "code" c'est top.

Par contre, question bête, je met ca ou ? c'est une macro ? un script ? une formule ?

Ou je met ca et surtout comment je le trigger, enfin comment je l'active (si ce n'est pas automatique ??).

Merci en tout j'ai une base de travail parfaite (et que je comprend en plus).

Edit : Ok j'ai vue ou c'était et compris le fonctionnement, une simple formule.

Merci a toi pour ton retour et tes explication, c'est parfait !

Bonne continuation.

Ah oui ! la formule est dans la case où se trouve NOM de l'onglet récap ! pas de trigger, c'est une fonction de la feuille, il n'y a aucun script.

edit : ok j'ai vu qu'entre temps tu avais trouvé !

Haha trop rapide pour moi j'était entrain d'éditer mon post ;) !

Merci a toi c'est parfait.

Edit : je cut le partage du G-Sheets et passe le sujet en résolu, encore merci =)

Note aussi que j'ai changé la formule de la somme en enlevant 1000, c'est aussi une astuce de GSheets

N'oublie pas de clore le fil de discussion en cliquant sur

Rechercher des sujets similaires à "macro script sheet bon commande"