incrementation collonne code vba

  • Initiateur de la discussion Initiateur de la discussion driven
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

driven

XLDnaute Nouveau
Bonjour à tous,

Je suis en train de modifier un tableur excel de gestion de stock, pris sur un des modèles téléchargeable d'excel .
Je l'ai pas mal modifié a ma sauce, afin d'avoir une saisie multiple, mais je me retrouve devant certaines difficultés

Je voudrais incrémenter une collonne cible par rapport a une collone source,
mais mon code renvoi une erreur, ya un bins quelque part!!

la macro fonctionne bien, la collone correspondant au stock actuel dans l'onglet produit référencé se met bien a jour en fonction des quantités dans la collone saisie (en mode sortie) mais la fin de ma macro finit par un bug.

Code:
Sub Bouton3_QuandClic()

Range("D11:D60").Select



If Range("D4") = "Sortie" Then
    msg = MsgBox("Vous allez mettre à jour le stock et la Feuille de caisse, Voulez vous contiuer ?", vbYesNo)
        If msg = vbYes Then
            For Each cece In Selection
                qte = Cells(cece.Row, cece.Column + 1).Value
                desi = Cells(cece.Row, cece.Column - 3).Value
                lili1 = cece.Row - 9
    
                Worksheets("Produits Référencés").Select
                Cells(lili1, 3).Value = Cells(lili1, 3).Value + qte
                Worksheets("Saisie").Select
        
            Next
              End If
            Worksheets("Saisie").Select
            Range("C11:C60").ClearContents
        End If


End Sub
En vous remerciant d'avance de vos lumieres.😉
 

Pièces jointes

Dernière édition:
Re : incrementation collonne code vba

Bonjour Driven, bonjour le forum,

Essaie comme ça :

Code:
Sub Bouton3_QuandClic()Dim cece As Range
Dim qte As Integer 'ou As Double si décimal
Dim lili1 As Byte 'ou integer ou long selon le nombre de lignes


If Range("D4") = "Sortie" Then
    msg = MsgBox("Vous allez mettre à jour le stock et la Feuille de caisse, Voulez vous contiuer ?", vbYesNo)
    If msg = vbYes Then
        For Each cece In Range("D11:D60")
            If IsError(cece.Value) = False Then
                qte = cece.Offset(0, 1).Value
                lili1 = cece.Row - 9
                With Worksheets("Produits Référencés")
                    .Cells(lili1, 3).Value = .Cells(lili1, 3).Value + qte
                End With
            End If
        Next
    End If
    With Worksheets("Saisie")
        .Select
        .Range("C11:C60").ClearContents
    End With
End If
End Sub
 
Re : incrementation collonne code vba

bonjour

et avec ceci ???

Code:
Sub Bouton3_QuandClic()
Range("D11:D60").Select
Application.ScreenUpdating = False
On Error Resume Next
If Range("D4") = "Sortie" Then
    msg = MsgBox("Vous allez mettre à jour le stock et la Feuille de caisse, Voulez vous contiuer ?", vbYesNo)
        If msg = vbYes Then
            For Each cece In Selection
                qte = Cells(cece.Row, cece.Column + 1).Value
                desi = Cells(cece.Row, cece.Column - 3).Value
                lili1 = cece.Row - 9
    
                Worksheets("Produits Référencés").Select
                Cells(lili1, 3).Value = Cells(lili1, 3).Value + qte
                Worksheets("Saisie").Select
        
         
            Next
              End If
            Worksheets("Saisie").Select
            Range("C11:C60").ClearContents
        End If
Application.ScreenUpdating = True
End Sub
 
Re : incrementation collonne code vba

Bonjour à tous


... ou encore ceci...
VB:
Sub Bouton3_QuandClic()
Dim msg&, cece As Range, qte, desi, lil1&

    If Range("D4") = "Sortie" Then

        With Range("D11:D60")

            msg = MsgBox("Vous allez mettre à jour le stock et la Feuille de caisse, Voulez vous contiuer ?", vbYesNo)
            If msg = vbYes Then

                For Each cece In .Cells

                    qte = .Cells(cece.Row, cece.Column + 1).Value

                    If IsNumeric(qte) Then

                        desi = .Cells(cece.Row, cece.Column - 3).Value
                        lili1 = cece.Row - 9

                        With Worksheets("Produits Référencés")
                            .Cells(lili1, 3).Value = .Cells(lili1, 3).Value + qte
                        End With

                    End If

                Next

            End If

            .Offset(0, 1).ClearContents

        End With

    End If
End Sub


ROGER2327
#5676


Lundi 2 Clinamen 139 (Saints Hiboux, maîtres - chanteurs - fête Suprême Quarte)
4 Germinal An CCXX, 5,4882h - tulipe
2012-W12-6T13:10:18Z
 
Re : incrementation collonne code vba

Impeccable merci bien, j'ai testé la première solution proposé par Robert, et elle fonctionne au poil.
Merci bcp.

Je profite que je suis là pour vous poser une autre petite question, cela fait déjà pas mal de temps que ca me taraude:
ex une formule comme celle ci:
=SI(D4="Inventaire";C11-D11;SI(D4="entrée";C11;SI(D4="sortie";-C11;0)))

comment faire pour faire une incrementation sans changer la valeur D4, c'est a dire en mettant le curseur sur le coin inférieur droit de la cellule et faire un glissé vers le bas,.
J'ai essayé en maintenant ctrl ou shift, mais cela ne fonctionne pas.
 
Re : incrementation collonne code vba

Bonjour Driven, bonjour le forum,

Le Symbole $ permet de bloquer la colonne $A1, la ligne A$1, les deux $A$1 ou rien A1 (par défaut). Quand dans une formule, tu édites une adresse ou une plage, utilise la touche [F4] pour alterner entre ces différentes possibilités (l'ordre de blocage étant : Les deux, La ligne, la colonne, aucune des deux).
 
Re : incrementation collonne code vba

super, génial ce forum, merci a toi Robert, ca fait des années que je galère avec ce problème d’incrémentation, ou je dois passer des heures a reprendre une a une mes cellules incrémentés.

Encore merci.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
32
Affichages
1 K
Réponses
2
Affichages
511
Réponses
6
Affichages
604
  • Question Question
Microsoft 365 Cpier/coller en VBA
Réponses
7
Affichages
691
Retour