VBA mise à jour d'une feuille de calcul Excel
Georges_R
Messages postés
8
Statut
Membre
-
Georges_R Messages postés 8 Statut Membre -
Georges_R Messages postés 8 Statut Membre -
Bonjour,
J'ai créé trois feuilles de calcul dans le classeur Excel.
1° liste (nommée "articles") des articles avec:
-> colonne A: désignation
-> colonne B: quantité initiale
-> colonne C: quantité disponible
2° feuille de saisie des entrées/sorties + calcul du nouveau disponible. Je l'ai nommée "Saisie"
3° journalisation des entrées/sorties (la base de données). je l'ai nommée "Journal"
Pouvez-vous me donner la technique pour mettre à jour la feuille "articles" avec la valeur du nouveau disponible de la feuille "saisie" svp?
Cordialement,
J'ai créé trois feuilles de calcul dans le classeur Excel.
1° liste (nommée "articles") des articles avec:
-> colonne A: désignation
-> colonne B: quantité initiale
-> colonne C: quantité disponible
2° feuille de saisie des entrées/sorties + calcul du nouveau disponible. Je l'ai nommée "Saisie"
3° journalisation des entrées/sorties (la base de données). je l'ai nommée "Journal"
Pouvez-vous me donner la technique pour mettre à jour la feuille "articles" avec la valeur du nouveau disponible de la feuille "saisie" svp?
Cordialement,
A voir également:
- VBA mise à jour d'une feuille de calcul Excel
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mise en forme conditionnelle excel - Guide
- Mise a jour chromecast - Accueil - Guide TV et vidéo
- Liste déroulante excel - Guide
10 réponses
Bonjour,
Cette liaison ne vient pas de mon fait et je ne comprends pas d'où elle vient. Elle n'a donc rien à voir avec mon problème.
Désolé!.
Voici ce que j'ai dans mon macro actuellement
Sub Enregistrer_la_saisie()
'
' Enregistrer_la_saisie Macro
' Macro enregistrée le 29/09/2009 par SILCA
'
' Verifier_si_une_cellule_B2_H2_est_vide Macro
' Macro enregistrée le 01/10/2009 par Georges
'
If Range("B2").Value = "" Then
MsgBox ("Attention: vous n'avez pas renseigné une cellule vide")
Exit Sub
End If
For Each Cellule In Range("D3:H2")
If Cellule.Value = 0 Then
MsgBox ("Attention: vous n'avez pas renseigné une cellule vide")
Exit Sub
End If
Next
'fin de vérification
'copie des informations dans le journal BD
ActiveWindow.ScrollColumn = 1
Sheets("BD").Select
Selection.EntireRow.Insert
Sheets("Saisie").Select
Range("A2:H2").Select
Selection.Copy
Sheets("BD").Select
Range("A2").Select
'Selection.EntireRow.Insert
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Saisie").Select
'ActiveWindow.ScrollColumn = 2
'ActiveWindow.ScrollColumn = 3
'Range("I8").Select
'ActiveSheet.Paste
'Application.CutCopyMode = False
'Range("I8:P8").Select
'C'est ici mon blocage pour la mise à jour de la cellule Saisie!colonne C
'comment mettre à jour la colonne C de l'article que je viens de saisir?
'Comment ajouter une alerte si colonne C est inférieure à colonne B?
' Réinitialisation des rubriques de saisie
Range("I7").Activate
Selection.ClearContents
Range("I12").Select
Selection.ClearContents
Range("I11").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("I12").Select
MsgBox ("Validation effectuée !")
End Sub
Cette liaison ne vient pas de mon fait et je ne comprends pas d'où elle vient. Elle n'a donc rien à voir avec mon problème.
Désolé!.
Voici ce que j'ai dans mon macro actuellement
Sub Enregistrer_la_saisie()
'
' Enregistrer_la_saisie Macro
' Macro enregistrée le 29/09/2009 par SILCA
'
' Verifier_si_une_cellule_B2_H2_est_vide Macro
' Macro enregistrée le 01/10/2009 par Georges
'
If Range("B2").Value = "" Then
MsgBox ("Attention: vous n'avez pas renseigné une cellule vide")
Exit Sub
End If
For Each Cellule In Range("D3:H2")
If Cellule.Value = 0 Then
MsgBox ("Attention: vous n'avez pas renseigné une cellule vide")
Exit Sub
End If
Next
'fin de vérification
'copie des informations dans le journal BD
ActiveWindow.ScrollColumn = 1
Sheets("BD").Select
Selection.EntireRow.Insert
Sheets("Saisie").Select
Range("A2:H2").Select
Selection.Copy
Sheets("BD").Select
Range("A2").Select
'Selection.EntireRow.Insert
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Sheets("Saisie").Select
'ActiveWindow.ScrollColumn = 2
'ActiveWindow.ScrollColumn = 3
'Range("I8").Select
'ActiveSheet.Paste
'Application.CutCopyMode = False
'Range("I8:P8").Select
'C'est ici mon blocage pour la mise à jour de la cellule Saisie!colonne C
'comment mettre à jour la colonne C de l'article que je viens de saisir?
'Comment ajouter une alerte si colonne C est inférieure à colonne B?
' Réinitialisation des rubriques de saisie
Range("I7").Activate
Selection.ClearContents
Range("I12").Select
Selection.ClearContents
Range("I11").Select
ActiveCell.FormulaR1C1 = "=TODAY()"
Range("I12").Select
MsgBox ("Validation effectuée !")
End Sub
Bonjour,
Je suis de retour après une grosse panne.
Pouvez-vous mettre votre exemple sur https://www.cjoint.com/ et poster le lien.
Se sera plus simple pour comprendre et adapter votre procédure.
Je suis de retour après une grosse panne.
Pouvez-vous mettre votre exemple sur https://www.cjoint.com/ et poster le lien.
Se sera plus simple pour comprendre et adapter votre procédure.
J'en suis désolé !
Voici le lien créé par Cijoint.com. Et encore merci pour votre patience.
https://www.cjoint.com/?kmoZTX1bjw
Voici le lien créé par Cijoint.com. Et encore merci pour votre patience.
https://www.cjoint.com/?kmoZTX1bjw
Bonjour,
Petite question : dans le tableau de saisie, sur la feuille [Saisie], pourquoi la quantité saisie doit être négative ?
Est-ce que se tableau sert à entrer le produit acheté et la quantité correspondante ?
Ou sert aussi comme sortie du stock ?
Petite question : dans le tableau de saisie, sur la feuille [Saisie], pourquoi la quantité saisie doit être négative ?
Est-ce que se tableau sert à entrer le produit acheté et la quantité correspondante ?
Ou sert aussi comme sortie du stock ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
J’ai un peu d’avance, j’ai adapté votre procédure [Sub Enregistrer_la_saisie()] pour la feuille [Saisie].
https://www.cjoint.com/?kmw5S6FYun
J’espère que c’est selon votre demande !
J’ai un peu d’avance, j’ai adapté votre procédure [Sub Enregistrer_la_saisie()] pour la feuille [Saisie].
https://www.cjoint.com/?kmw5S6FYun
J’espère que c’est selon votre demande !
Re-bonjour,
J'ai lu le code de la saisie et j'ai vu que j'avais des lignes inutiles.
Il y a un petit souci car chaque nouvelle saisie efface le contenu des anciennes saisies dans le journal "BD".
J'ai un autre souhait sur "Articles":
Comment forcer la copie pour que la nouvelle ligne que je viens d'insérer ne soit pas en gras?
Je vais continuer pour créer un code de suppression dans "articles" de telle sorte que les cellules de la colonne H ne soient pas impactées.
Merci pour votre aide!
J'ai lu le code de la saisie et j'ai vu que j'avais des lignes inutiles.
Il y a un petit souci car chaque nouvelle saisie efface le contenu des anciennes saisies dans le journal "BD".
J'ai un autre souhait sur "Articles":
Comment forcer la copie pour que la nouvelle ligne que je viens d'insérer ne soit pas en gras?
Je vais continuer pour créer un code de suppression dans "articles" de telle sorte que les cellules de la colonne H ne soient pas impactées.
Merci pour votre aide!
Bonjour,
Voir la feuille [Saisie] … https://www.cjoint.com/?knvFltiHb0
Note ; que comprendre par : ….. que les cellules de la colonne H ne soient pas impactées
Voir la feuille [Saisie] … https://www.cjoint.com/?knvFltiHb0
Note ; que comprendre par : ….. que les cellules de la colonne H ne soient pas impactées
Bonjour,
Lorsque je supprime manuellement une ligne d'article, (exemple la linge N°9), ce sont toutes les colonnes de cette ligne qui disparaissent. Du coup, le macro qui utilise les valeurs saisies dans la colonne H ne peuvent plus travailler.
Du coup, j'ai imaginé une fonction de suppression d'un article comme suit:
Sub Supprimer_article()
'
' Supprimer_article Macro
' Macro enregistrée le 13/10/2009 par Georges_R
'
nomart = Range("H25").Value
numligne = WorksheetFunction.Match(nomart, Sheets("Articles").Range("A:A"), 0)
MsgBox ("l article " & nomart & " se trouve en ligne " & numligne)
' Supprimer cette ligne
range("A" & numligne:"C" & numligne).Activate
'supprimer JUSTE les cellules ("A" & numligne ---> "C" & numligne)
Selection.Delete Shift:=xlUp
'
End Sub
Ce n'est pas une bonne synthaxe pour VBA ...
Question subsidiaire: Quelle est la différence entre .Range et Range ?
Cordialement,
Lorsque je supprime manuellement une ligne d'article, (exemple la linge N°9), ce sont toutes les colonnes de cette ligne qui disparaissent. Du coup, le macro qui utilise les valeurs saisies dans la colonne H ne peuvent plus travailler.
Du coup, j'ai imaginé une fonction de suppression d'un article comme suit:
Sub Supprimer_article()
'
' Supprimer_article Macro
' Macro enregistrée le 13/10/2009 par Georges_R
'
nomart = Range("H25").Value
numligne = WorksheetFunction.Match(nomart, Sheets("Articles").Range("A:A"), 0)
MsgBox ("l article " & nomart & " se trouve en ligne " & numligne)
' Supprimer cette ligne
range("A" & numligne:"C" & numligne).Activate
'supprimer JUSTE les cellules ("A" & numligne ---> "C" & numligne)
Selection.Delete Shift:=xlUp
'
End Sub
Ce n'est pas une bonne synthaxe pour VBA ...
Question subsidiaire: Quelle est la différence entre .Range et Range ?
Cordialement,
Bonjour,
Eh bien oui, si vous supprimer une ligne vous touchez aussi votre tableau de saisie.
Je vous fais une proposition en fin de journée.
Eh bien oui, si vous supprimer une ligne vous touchez aussi votre tableau de saisie.
Je vous fais une proposition en fin de journée.
Bonjour,
Ci joint ma proposition, https://www.cjoint.com/?kovCV8yPAo
J'ai utilisé votre travail en le remodelant pour réaliser une page d'accueil ou vous avez l'ensemble des tableaux d’ajout, saisie et suppression.
Ci joint ma proposition, https://www.cjoint.com/?kovCV8yPAo
J'ai utilisé votre travail en le remodelant pour réaliser une page d'accueil ou vous avez l'ensemble des tableaux d’ajout, saisie et suppression.