Ajouter et supprimer des lignes a partir d'une toupie

cj welch

XLDnaute Occasionnel
bonsoir,

j'ai trouver un fichier sur ce forum que je voudrais modifier.

En effet, des lignes s'ajoute ou se supprime a partir d'une toupie.
Je voudrais faire 3 choses

1. Quand j'ajoute des lignes et que je remonte, si une des lignes de la colonne J est renseigné, la suppression des lignes s'arrete a la dernière ligne qui comporte une valeur.

2. Quand des lignes s'incèrent, la valeur contenue dans certaine cellule se vide (ex: en j13, k13, l13, quand on utilise 2 fois la toupie les chiffres de ces cellules se vident. ce que j'aimerais éviter.

3. ajouter 2 colonnes après la colonne B. Lorsque je les incères la toupie me renvoi vers un message d'erreur.

je vous joint le fichier

Merci pour votre aide

A+
 

Pièces jointes

  • Copie de Bouton.zip
    20.6 KB · Affichages: 223

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

salut ledzepfred,

Excuse moi, mais je n'est pas ozé le faire de peur de faire une bétise et je ne savais pas si je devais conserver l'ancien.

c'est pas grave, je me suis lancé. j'ai du transformer le nom de l'user en userwe. je t'ai aussi copié l'ancien code (il est en vert). j'espère que ça ira.

Concernant, le format de cellule, j'avais un message bloquant car j'avai changé le format des cellules ou se trouvaient les mois. le format etait devenu juillet 2008 et non plus juillet-08. J'ai remis l'ancien format et là plus de problème.

Cijoint.fr - Service gratuit de dépôt de fichiers

De plus, regarde le total de la colonne V, il ne se fait pas quand on l' alimente avec l'user.

Cordialement

A+
 
Dernière édition:

ledzepfred

XLDnaute Impliqué
Re : Ajouter et supprimer des lignes a partir d'une toupie

salut cj welch,

en regardant on userform je me suis rendu compte que les colonnes U, V, W correspondent respectivement à nombre, montant et Total.
Or dans le fichier avec scrollbar, on a en T, U, V : destination1, destination2 et Montant total.

Ma question que souhaites-tu obtenir en colonne T, U,V
1) nombre montant et total (correspondant à nombre*montant)
2) destination1 (nombre), destination2 (nombre), total (somme de dest1 et dest2)

Pour les formats de date, en utilisant l'enregistreur de macros et qu'on modifie le format d'une cellule (ex: janv-08) on obtient le code selection.numberformat="mmm-yy", or tu souhaites janvier 2008, il suffit donc de remplacer "mmm-yy" par "mmmm yyyy". Ensuite tu sélectionnes ta plage de cellules dont tu veux modifier le format et tu executes ce code... le tour est joué

a+
 

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

re,

concernant ta première question, je souhaiterais la 2ème solution.
CAD "destination1 (nombre), destination2 (nombre), total (somme de dest1 et dest2)".
Pour mémoire :
De plus, regarde le total de la colonne V, il ne se fait pas quand on l' alimente avec l'user.

Pour les formats de date, en utilisant l'enregistreur de macros et qu'on modifie le format d'une cellule (ex: janv-08) on obtient le code selection.numberformat="mmm-yy", or tu souhaites janvier 2008, il suffit donc de remplacer "mmm-yy" par "mmmm yyyy". Ensuite tu sélectionnes ta plage de cellules dont tu veux modifier le format et tu executes ce code... le tour est joué

ce qui était bizard c'est que le format que tu as rentré est "mmmm yyyy". mais enfin ce n'est pas important.

A+
 

ledzepfred

XLDnaute Impliqué
Re : Ajouter et supprimer des lignes a partir d'une toupie

RE...

pour éviter que l'on sorte de l'userform en cliquant sur la croix il suffit d'ajouter dans le code de l'userform :

Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
If CloseMode = 0 Then Cancel = True
End Sub
on oblige ainsi à passer par le bouton quitter

Pour le format date : encore une fois l'enregisteur de macros peut te guider dans la résolution de ce type de pb, j'enregistre une macro pour obtenir le code de cellule format date type:= mercredi 14 janvier 2008, ce qui donne:
Selection.NumberFormat = "[$-F800]dddd, mmmm dd, yyyy"
J'en déduis donc que pour avoir le mois non abrégé en toutes lettres c'est mmmm

le pb de total en V était juste un problème de format monétaire forcé par vba en enlevant le format dans le code ça fonctionne.

ci-joint version 12 corrigée : Cijoint.fr - Service gratuit de dépôt de fichiers

A+
 

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

re,

je viens juste de tester l'user et je remarque une petite chose.
Quand on est sur la colonne 20 (ce n'est plus en lettre sur le fichier) et qu'on rentre un chiffre, quand on quitte l'user, le chiffre ne s'efface pas alors que dans la colonne 21 oui.

De plus, pourrais tu supprimer le € de la colonne 22 "total".

Enfin, sur la feuille controle, j'ai remarqué que sur les colonnes 9 et 13, le total de la colonne correspondante de la feuille commande s'inscrivait en haut des colonnes (chiffres 69 et 50). j'ai essayé de les supprimer, mais quand je modifie le code, plus rien ne s' inscrit dans les dites colonnes de la feuilles controle. je ne c'est pas si j'ai été claire dans mes explications.

Encore merci

A+
 

ledzepfred

XLDnaute Impliqué
Re : Ajouter et supprimer des lignes a partir d'une toupie

salut cj welch,

ci-joint la v13 Cijoint.fr - Service gratuit de dépôt de fichiers.

Ai corrigé l'apparition des totaux dans controle, c'était lié à la bouche for z= lig1 to lig2, or lig2 est la ligne définie comme étant la ligne TOTAL, il suffisait donc d'écrire for z= lig1 to lig2 -1 (en mode pas à pas c'était facile d'identifier le pb)

ai remis les colonnes en lettres (pour obtenir les chiffres, il suffit de faire outils/options/onglet général et cocher style de référence L1C1, c'est pratique pour la création des formules par vba)

ai supprimé le format monétaire dans la colonne total (tu aurais pu le faire tout seul il suffit de modifier le format de cellules!!!!)

Concernant le bouton quitter du userform, je pense qu'il serait interessant que cela ne supprime que la valeur saisie qui a fait apparaitre l'userform plutôt que de supprimer les trois cellules T U V.

Si c'est malgrès tout ce que tu souhaites la v13 a été modifié de la sorte, par contre si c'est ma proposition qui t'interesse, j'ai mis en vert une ligne dans le code du bouton quitter (activecell.value=""), enlèves l'apostrophe sur cette ligne et supprimes les deux lignes
cells(textbox1.value,"u")="" et cells(textbox1.value,"t")=""

a+
 
Dernière édition:

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

salut ledzepfred,

Concernant le bouton quitter du userform, je pense qu'il serait interessant que cela ne supprime que la valeur saisie qui a fait apparaitre l'userform plutôt que de supprimer les trois cellules T U V.

oui c'est ça, c'est également ce que je souhaite. j'ai donc fait comme tu m'as dit et rien ne se passe, les valeurs ne s'efface pas. ai je oublié quelques choses ? Je vois que tu as mis des info en vert "'Remplace . par virgule".

Ai corrigé l'apparition des totaux dans controle, c'était lié à la bouche for z= lig1 to lig2, or lig2 est la ligne définie comme étant la ligne TOTAL, il suffisait donc d'écrire for z= lig1 to lig2 -1 (en mode pas à pas c'était facile d'identifier le pb)

Concernant ta remarque, j'ai donc essayé de trouver la solution avec l'ancien fichier.
j'ai fait la chose suivante :

J'ai mis le point sur la ligne : Sheets("controle").Copy After:=Sheets(Sheets.Count) de la macro cb_facture.
Appuié sur F8 succéssivement , la ligne en surbrillance est la 1ère ligne de la macro, il lance le message "veuillez confirmer ", je dit oui et après il me renvoi vers le module Nombretexte. Je ne voit en aucun cas les valeurs se copie de la feuille commande vers la feuille controle. Ce sujet, m'intèresse beaucoup pour trouver les erreur. J'ai peché quelque part ?

Dans l'attente de te lire

Cordialement

A+
 
Dernière édition:

ledzepfred

XLDnaute Impliqué
Re : Ajouter et supprimer des lignes a partir d'une toupie

Salut cj welch,

pour la suppression de la valeur saisie quand quitter : j'avais omis de modifier la procédure worksheet_change du coup le résultat n'était pas bon, j'ai corrigé maintenant c'est bon.

Cijoint.fr - Service gratuit de dépôt de fichiers

Pour le mode débogage tu as bien fait mais la fontion de conversion étant active, il faut la laisser se dérouler jusqu'au bout, du coup pour te permettre de ne pas être pollué par ça j'ai désactivé la fonction de conversion (en sélectionnant toutes les lignes du module nombretexte, ensuite grâce à la barre d'outils edition, clic sur l'icone commenter bloc, une apostrophe apparait devant chaque ligne sélectionnée du module (le code se met en vert), pour revenir en arrière, je resélectionne les lignes du module et clic sur l'icone ne pas commenter bloc)
ce sera plus facile pour voir ce qui se passe.
Peut-être faudrait-il te familiariser avec ce mode avec une procédure moins complexe...

A+
 
Dernière édition:

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

re,

je viens de tester la dernière version.

j'ai remarqué un petit problème.
Quand tu selectionne une déstination puis tu vas dans la colonne déstination 2 (sur la même ligne) ,
tu rentre un nombre puis tu quitte, la valeur dans la colonne total s'efface

Peut tu corriger cela ?

Regarde, j'ai posté un message concernant un user que tu as réalisé https://www.excel-downloads.com/threads/userforme-a-terminer.104710/

A+
 

ledzepfred

XLDnaute Impliqué
Re : Ajouter et supprimer des lignes a partir d'une toupie

RE,

chuis fatigué ce soir : avais essayé un code mais ai oublié de l'enlever avant de poster : dans le code du bouton quitter de l'userform supprimes cette ligne :

Cells(TextBox1.Value, "V").Value = Cells(TextBox1.Value, "T").Value + Cells(TextBox1.Value, "U").Value

A+
 

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

re,

une toute petite chose serait a modifier.
Quand on séléctionne une déstination en 1 par exemple
Puis puis tu vas dans la colonne déstination 2 (sur la même ligne) ,tu rentre un nombre et en suite tu quitte
Puis tu retoure suPprimer la valeur dans la colonne déstination 1 , tu vera la colonne total ne se vide pas. peut tu faire quelque chose ?

A+
 

ledzepfred

XLDnaute Impliqué
Re : Ajouter et supprimer des lignes a partir d'une toupie

dans la procédure worksheet_change de la feuille commande
ajoutes le code en rouge au code existant en bleu :

If Target.Column = 20 Or Target.Column = 21 Then
Target.Select

x = Application.WorksheetFunction.CountA(Range(Cells(Target.Row, "t"), Cells(Target.Row, "u")))
If x = 0 Then Cells(Target.Row, "v") = "": Exit Sub

If Target.Value <> "" Then


a+

Edit: je mets la dernière version avec le code indiqué
 
Dernière édition:

cj welch

XLDnaute Occasionnel
Re : Ajouter et supprimer des lignes a partir d'une toupie

salut ledzepfred,
je viens de tester le fichier.
Malheureusement, cela ne marche pas.

Ne pense tu pas qu'il serait peut etre plus facile de rajouter 2 colonnes qui recevrais le total de chaque déstination ?

Dans l'attente de te lire

A+
 

Discussions similaires