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,

je viens de tester le fichier, il fonctionne bien.
Seulement, si on rempli le 3ème scrollbar, il n'y a pas de facture ni de feuille controle qui se crèer pour lui.

De plus, il y a une 3ème feuille a créer par scrollbar. Ne vaut 'il pas mieux cantonner le bouton factures à la création des factures uniquements ? Je te rappel que par scrolbar, il faut 3 feuilles (soit pour le total du projet 12 feuilles). C'est pour cela que je t'ai laissé pour info le bouton controle et le bouton reversement avec leur ancien code.

Enfin, il y a quelques petits détails de cellule a copier. mais çà si tu m'explique c'est facile a faire.

Dans l'attente de te lire

Cordialement
 
Dernière édition:

ledzepfred

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

Salut cjwelch,

je n'ai pas de souci avec le scrollbar3 pour la création de factures et de controle, dans le code cb_Facture, il y a ces instructions :

x = Application.WorksheetFunction.CountA(Selection)
If x > 11 Then
...

où selection représente l'integralité des lignes d'un "scrollbar" moins la colonne A, l'instruction x = Application.WorksheetFunction.CountA(Selection) compte le nombre de valeurs dans la sélection, si ce nombre est supérieur à 11 alors la facture et le controle se créent. Si cela n'a pas marché pour toi c'est que le nombre de valeurs dans la selection était inférieur à 11 (j'ai défini 11 sur tes indications comme étant le nombre de valeurs minimales quand le scrollbar n'est pas renseigné maintenant si c'est pas ça il suffit que tu modifies la ligne If x > 11 Then

Concernant la troisième feuille à ajouter, tu fais sans doute allusion à la feuille reversement, or je t'avais demandé d'ajouter cette feuille avec les données à reprendre des scrollbar, donc c'est à toi de jouer.

Les codes controle et reversement me sont inutiles et je pense qu'il est plus simple de créer les feuilles facture controle et reversement en un seul clic

Enfin pour les valeurs à ajouter dans les factures et controles : je procède ainsi : je prend l'exemple de la feuille controle

with sheets (CONTROLE) 'ou FEUILLE est le nom de la feuille controle
.[G4].Value = Range("B" & lig1).Value 'mettre en G4 de la feuille controle la valeur de B & lig1 (de la feuille commande soit B12 si Lig1=12)
'ensuite il y a une boucle (plus exactement un for next mais ça revient au même) pour récuperer les infos des colonnes I, P à S :
For z = lig1 To lig2 'lig1 est la première ligne du scrollbar, lig2 la dernière
Range("I" & lig1).Select '(je sélectionne I12)
.Range("H" & lig3).Value = Range("I" & lig1).Value 'lig3 définit comme la 15ème ligne de la feuille controle, en H15 de controle on aura la valeur de I12 de commande
.Range("I" & lig3).Value = Range("P" & lig1).Value 'etc...
.Range("J" & lig3).Value = Range("R" & lig1).Value
.Range("L" & lig3).Value = Range("Q" & lig1).Value
.Range("M" & lig3).Value = Range("S" & lig1).Value
lig3 = lig3 + 1 'avant de faire un tour de boucle j'ajoute 1 à lig3
lig1 = lig1 + 1 ' et 1 à lig 1
Next
'suite du code
end with

Si mes explications ne sont pas claires ajoutes les références manquantes dans controle et modelfacture et je le ferais

a+
 
Dernière édition:

cj welch

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

salut ledzepfred,

concernant le scrollbar 3 j'ai fait comme tu m'as dit et cela fonctionne.

J'ai mis dans la version 7, la feuille reversement avec toutes les valeurs (les formules de calcules sont justes et sont a copier) et dans la feuille controle, les valeurs a ajouter (ce sont les formules de calcules).les rèf sont par rapport au scrolbar 1.

Pour mémoire, il faudrait modifier aussi le lancement de l'userform ( tu as + d'info dans la feuille commande)

Une dernière chose, pourrait tu me dire comment la macro procède pour la feuille controle ainsi que pour la feuille reversement.

Enfin, quand on click sur le bouton FACTURES a plusieurs reprises, un message d'erreur apparait dans la version 7.

Merci du temps que tu me consacre

Dans l'attente de te lire

Cordialement
 

Pièces jointes

  • bouton v7.zip
    44.9 KB · Affichages: 55

ledzepfred

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

salut cjwelch,

le bug est normal dans la mesure où les feuilles factures et controles sont supprimées puis recréées, le code de suppression s'appuie sur le nombre de feuilles existantes avant le clic sur facture soit 5 feuilles (données, commande, model facture, controle et reversement), toutes les feuilles après ces cinq feuilles sont supprimées puis recréées. Dans le fichier v7, la feuille reversement n'est pas présente donc le clic sur factures suppriment les bonnes feuilles sauf la première facture et comme derrière on demande à la macro de recréer une feuille existante, ça bugge.

Merci donc de mettre le bon fichier avec la feuille reversement et les nouvelles références de facture à ajouter (j'ai rien vu)

Concernant la création des factures c'est le même principe que pour les scrollbar et ce sera surement le même pour reversement (il faut d'abord que je vois cette fameuse feuille!)

Connais-tu le mode pas à pas (mettre un point d'arrêt en début de procédure puis taper sur la touche F8 pour suivre le déroulement de la macro ligne par ligne, chaque appui sur F8 te fais passer d'une ligne de code à la suivante), c'est très pratique pour déceler les lignes qui bugggent dans un code ou t'aider à mieux comprendre les séquences (tu peux même ajouter des commentaires pendant l'execution pour avoir des repères) bref le mode pas à pas est aussi utile que l'enregistreur de macros.

Enfin concernant l'userform il me semble t'avoir alerter sur le fait qu'ajouter une colonne risquait de perturber les procédures mises en place avant cet ajout (lis-tu mes posts????)
Actuellement l'userform s'affiche lorsque l'on modifie ou ajoute une valeur en colonne T, que souhaites-tu concernant l'ouverture du userform

a+
 
Dernière édition:

cj welch

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

Salut ledzepfred,

Je te prie de trouver une nouvelle version 7, apparament en lançant la macro, j'ai effacé la feuille reversement.
Cijoint.fr - Service gratuit de dépôt de fichiers

Non, je ne connait pas le mode pas a pas. comment mais ton un point d'arret ? cela m'intéresse beaucoup.

Concernant, le lancement de l'userform, je voudrais qu'on puisse le lancer a partir de la colonne T et ou de la colonne U, il faudrais que le total s'incrive en colonne V. (je me demande s'il ne faut pas ajouter 2 colonnes une après T et une après U, pour inscrire le cout unitaire de chaque déstination) Quand pense tu ?

Enfin, oui je lit tés postes, je voudrais réutiliser l'user que tu as construit dans ce nouveau projet.

Une dernière petite chose concernant mon projet, après les feuilles de saisies, j'ai l'intention de créer un classeur de vérification, qui ira chercher les renseignement dasn les fichiers fermés. la methode qu'on utilise pour ce projet, permettra il l'import ds info ?

Dans l'attente de te lire

Cordialement
 
Dernière édition:

ledzepfred

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

salut cj welch,

les points d'arret : dans l'editeur vba positionnes ton curseur sur une ligne et tapes sur la touche F9 (regardes également la partie débogage dans le menu de l'editeur Vba)

Je regarde le fichier et reviens vers toi : tu es sur de vouloir quatre feuilles de reversement (une par scrollbar)?

autre question en E40 de reversement tu as la formule suivante (erronnée):
=NOMPROPRE(GAUCHE(NombreTexte(Q38;;"€"))&(DROITE(NombreTexte(Q38;;"€");NBCAR(NombreTexte(Q38;;"€"))-1)))
que souhaites-tu récupérer en E40 : la somme de Q38 mais en toutes lettres?

a+
 
Dernière édition:

ledzepfred

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

salut cj welch,

en attendant ta réonse sur la formule mystère, ci-joint le fichier v8 (intégrant la modification des feuilles controles (ajout des formules), la création des feuillets reversement, la modification de l'ouverture de l'userform qui se fait lorsque on tapes ou effaces une valeur dans la colonne T ou U.

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

salut ledzepfred,

je viens de tester le fichier, bravo il semble fonctionner super bien. J'ai vu qu'il y a 1 ou 2 petit détail a réglé style sur la feuille controle, remplaçer en E3 "pour le mois de" par "pour la période du temps au temps" comme dans la feuille reversement.

Concernant ta question, La cellule E40 renvoi a une macro de convertion de chiffre en lettre que je te joint dans le fichier ci-dessous. cette macro doit s'inscire avec le total de la feuille controle et le total de la feuille reversement
que souhaites-tu récupérer en E40 : la somme de Q38 mais en toutes lettres?
oui, c'est ça

Je regarde le fichier et reviens vers toi : tu es sur de vouloir quatre feuilles de reversement (une par scrollbar)?

oui



Encore bravo.

Dans l'attente de te lire

Cordialement

A+
 

Pièces jointes

  • convertion chiffre.zip
    19.4 KB · Affichages: 37
Dernière édition:

cj welch

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

Re,

je viens de remarquer une chose concernant les scrollbar.
Quand on incère une nouvelle ligne, la colonne total ne prend pas en compte cette nouvelle ligne.
Penses tu que tu peut solutionner ce problème ?

a+
 

ledzepfred

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

Voila m'sieur,

j'ai rectifié les formules après l'insertion de lignes (pour la suppression cela ne pose pas de pb).
j'ai rectifié un petit bug dans le cas où un seul mois est renseigné dans une plage dédiée à un scrollbar (dans controle et reversement (E3 et J3), si plusieurs mois : Pour la période du "premier mois" au "dernier mois" , si un seul mois : Pour la période du "premier mois")
Ai insérer ton module de conversion numérique en texte

a+

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

cj welch

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

salut ledzepfred,

Concernant, la version 9, il y aurait quelques petits points a rajouter que je t'explique dans le fichier ci-joint.

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

Par contre, j'ai fait une bétise, je n'est pas mis la dernière version de l'user, Peut tu me donner les modif a apporter ou prèfere tu que je t'envoi la dernière version.

Dans l'attente de te lire

Cordialement

A+
 

ledzepfred

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

re

En ce qui concerne l'ajout des formules dans la ligne TOTAL, c'est fait ainsi que l'adaptation de la macro ajoutligne. Cela porte le nombre de vaeleurs dans la plage à 19 (exemple du scrollbar 4, merci de valider que cette plage contient toutes les infos minimales). Pour éviter que l'userform2 ne s'ouvre sur les lignes total il suffisait d'écrire en début de procédure worksheet_change :
If cells(Target.row,2)= "TOTAL" Then Exit Sub
(en clair si target = U16, la macro regarde ce qu'il y a en B16, s'il y trouve "TOTAL" alors la macro s'arrête).



pour l'userform je préfère la dernière version... on ne sait jamais.

a+
 
Dernière édition:

cj welch

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

re,

je te prie de trouver le fichier.

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

j'ai remarquer un petit détail, quand on ferme l'user avec la petite croix rouge, la valeur inscrite dans la ligne U ne s'efface.

A+
 

cj welch

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

salut ledzepfred,

je viens de remarquer une chose. j'ai inscrit sur tous les scrollbar deux dates et j'ai lancé le calcul. Un message d'erreur apparait "erreur d'exécution 13 incompatibilité de type " et cela me renvoi a la ligne suivante :

Else: MOIS = "Pour la période de " & Format(Month(Range("I" & Lig1).Value) & " " & Year(Range("I" & Lig1).Value), "mmmm yyyy") & " à " & Format(Month(Range("I" & Lig1).End(xlDown).Value) & " " & Year(Range("I" & Lig1).End(xlDown).Value), "mmmm yyyy")

Je crois que je viens de trouver l'erreur. En effet, j'ai modifié le format des cellules pour y mettre un format personnalisé mmmm aaaa.

A+
 
Dernière édition:

ledzepfred

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

salut cj welch,

le fichier transmis n'a pas les scrollbar, si tu l'as mis parce que le userform n'est pas le même tu pourrais a minima les fusionner tous les deux!!!:mad:

pour ce qui est du format de cellule j'ai pas compris, peux-tu developper?

A+
 

Discussions similaires

Statistiques des forums

Discussions
311 716
Messages
2 081 828
Membres
101 823
dernier inscrit
mohamed3s