Créer des feuilles a partir d'un bouton

cj welch

XLDnaute Occasionnel
salut le forum,

je voudrais a partir d'un bouton créer autant de feuille qu'il y a de lignes saisie dans mon tableau.

de plus, je voudrais que les nouvelles feuilles créees récupèrent les données renseignées dans ce tableau.

je ne sais pas si c'est possible

merci de votre aide
 

skoobi

XLDnaute Barbatruc
Re : Créer des feuilles a partir d'un bouton

Je vois que tu as 5 feuilles en tout (sans les factures), donc il faut adapter le code comme ceci:

Code:
If Sheets.Count > [B][COLOR=blue]5[/COLOR][/B] Then
  Application.DisplayAlerts = False
  For i = Sheets.Count To [COLOR=blue][B]6[/B][/COLOR] Step -1
    Sheets(i).Delete
  Next
  Application.DisplayAlerts = True
End If

Au fait, quel est l'utilité du message ""La factures viennent de se supprimer, il faut les recalucler" à la fin?
 

cj welch

XLDnaute Occasionnel
Re : Créer des feuilles a partir d'un bouton

salut skoobi,

c'est juste un leur.
cependant, aurait tu une solution pour ma feuille "controle". je voudrais que certaine info de la feuille "données" se copie sur cette feuille. j'ai essayé avec une formule qui comporte la réference des cellules. Ca marche; seulement quand j'ajoute ou je supprime un enregistrement avec l'userform1, la donnée dans la feuille'controle indique : controle!#REF.. Je n'arrive pas à trouver une solution adapté. En aurait tu une ?

Autre chose, il y a qlque chose dans la facture model que je n'arrive pas a solutionner. en effet, au bas de la facture figure ligne 33 et 34 une phrase qui doit s'afficher en fonction de certain critère. seulement ça ne marche pas. pourtant ma formule si est juste.

merci

A+
 

skoobi

XLDnaute Barbatruc
Re : Créer des feuilles a partir d'un bouton

Re,
je voudrais que certaine info de la feuille "données" se copie sur cette feuille. j'ai essayé avec une formule qui comporte la réference des cellules. Ca marche; seulement quand j'ajoute ou je supprime un enregistrement avec l'userform1, la donnée dans la feuille'controle indique : controle!#REF.. Je n'arrive pas à trouver une solution adapté. En aurait tu une ?
peux-tu préciser stp car je ne vois aucune fonction dans la feuille "données".
Autre chose, il y a qlque chose dans la facture model que je n'arrive pas a solutionner. en effet, au bas de la facture figure ligne 33 et 34 une phrase qui doit s'afficher en fonction de certain critère. seulement ça ne marche pas. pourtant ma formule si est juste.
Sur le fichier joint tout à l'air en ordre...
 

Pièces jointes

  • cj.zip
    61.6 KB · Affichages: 46

cj welch

XLDnaute Occasionnel
Re : Créer des feuilles a partir d'un bouton

re,

je te renvoi ton fichier avec les formules.

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

ESSAI :
Dans un 1er temps, l'erreur est revenu. (le calcul a supprimé la feuille vérification et reverse...), j'ai juste ouvert la feuille model pour rentrer les formules de calcul.
En suite, (j'ai inscrit les formules dans la feuille "modifier" et model facture ) . A l'aide de user supprime en enregistrement et regarde la feuille"modifier" et le bas de la facture et tu comprendras mon dernier post

je reste a ta disposition

A+
 
Dernière édition:

jeanpierre

Nous a quitté
Repose en paix
Re : Créer des feuilles a partir d'un bouton

Bonsoir cjwelch, Salut skoobi,

En F31 : =SI(D31>E31;D31-E31;"")

Modifie par : =SI(D31>E31;D31-E31;0)

Pareil en G31

Et normalement cela fonctionne.

Favorise le 0 plutôt que les "", car pour excel la cellule n'est plus vide donc il ne peut répondre à la condition.

Bonne soirée.

Jean-Pierre
 

cj welch

XLDnaute Occasionnel
Re : Créer des feuilles a partir d'un bouton

re skoobi, salut jean pierre.
la formule marche. c'est ok merci
skoobi, j'ai trouvé pourquoi le code plante de temps en temps. Quant tu appuis sur le bouton "facture" puis encore sur ce bouton et après sur le bouton vérification et reversement, ces deux feuilles se mettent à la fin. est il possible de bloquer leurs position dans le classeur.

A+
 

skoobi

XLDnaute Barbatruc
Re : Créer des feuilles a partir d'un bouton

Re,

salut jeanpierre :),

Etant donné que ces 2 feuilles sont cachées, ça f.....ait la m....
Voici le code adapté (en changeant de stratégie pour la suppression des factures):

Code:
Private Sub Cb_Facture_Click()
Dim Nom As Range, Lig As Long, Rep As Integer, i As Long

Rep = MsgBox("Veuillez confirmer.", vbQuestion + vbYesNo, "Vous voulez refaire les calculs ?")
If Rep = vbNo Then Exit Sub
Application.ScreenUpdating = False
ActiveWorkbook.Unprotect
'on efface les factures existantes
Application.DisplayAlerts = False
[COLOR=Blue][B]For i = Sheets.Count To 1 Step -1  ' ici ça efface les feuilles contenant " Fact "
  If Sheets(i).Name Like "* Fact *" Then Sheets(i).Delete
Next[/B][/COLOR]
  Application.DisplayAlerts = True
Sheets("model facture").Visible = True
[COLOR=Blue][B]Sheets("Reversement").Visible = True
Sheets("controle").Visible = True[/B][/COLOR]
'pour chaque nom de la cellule A9 à la dernière cellule non vide colonne A.
For Each Nom In Range("A9", [A8].End(xlDown))
  Lig = Nom.Row
    Sheets("model facture").Copy After:=Sheets(Sheets.Count)
    ActiveSheet.Name = Lig - 8 & " Fact " & Nom.Value & Left(Range("B" & Lig).Value, 1)
  With Sheets(Lig - 8 & " Fact " & Nom.Value & Left(Range("B" & Lig).Value, 1))
'copie vers la facture
'Lig correspond à la ligne du nom de la feuille "Commande"
    .[G4].Value = Range("A" & Lig).Value
    .[G5].Value = Range("B" & Lig).Value
    .[G8].Value = [B4].Value
    .[A10].Value = [B3].Value
    .[B15].Value = Range("G" & Lig).Value
    .[B17].Value = Range("H" & Lig).Value
    .[B19].Value = Range("I" & Lig).Value
    .[B25].Value = Range("N" & Lig).Value
    .[B30].Value = Range("S" & Lig).Value
    .[D21].Value = Range("T" & Lig).Value
  End With
Next Nom
Application.ScreenUpdating = True
Sheets("model facture").Visible = False
Sheets("Reversement").Visible = False
Sheets("controle").Visible = False
MsgBox ("La factures viennent de se supprimer, il faut les recalucler")
Sheets("Commande").Activate
End Sub
Là ça devrait aller mieux :).

Bon test.
 

skoobi

XLDnaute Barbatruc
Re : Créer des feuilles a partir d'un bouton

peut tu m'expliquer comment tu as fait. si demain je veu rajouter une autre feuille, faut il modifier le code ?
La macro analyse la chaine de caractère "* Fact *" (il y a un espace avant et après Fact) dans le nom de l'onglet et le supprime si c'est trouvé.
Donc tu peux ajouter autant de feuille que tu veux mais le nom ne devra pas faire: xxxx Fact xxxx.
De plus ces feuilles devront être ajoutées dans le code pour les rendre visible et les cacher.
Voili voulou.
 

cj welch

XLDnaute Occasionnel
Re : Créer des feuilles a partir d'un bouton

salut skoobi,

jeanpierre a répondu sur une partie du problème.
il reste la partie la plus difficile copier des données de la feuille"commande" vers la feuille"controle" car quand on ajoute ou effeace un enregistrement, la cellule recopié indique une erreur de réf.
A+
 

cj welch

XLDnaute Occasionnel
Re : Créer des feuilles a partir d'un bouton

Salut skoobi,

le fichier ci dessous doit avoir toutes les feuilles nécessaires.
le but est de copier les info de la feuille "commande" vers la feuille "controle"
(ex: nom, prenom, commune, cp, date, nombre de journées, etc....).
bien entendu quand on ajoute ou supprime un enregistrement, la feuille déstination doit s'actualiser.

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

A+
 
Dernière édition:

Discussions similaires

Réponses
10
Affichages
222
Compte Supprimé 979
C
Réponses
7
Affichages
333

Statistiques des forums

Discussions
311 732
Messages
2 081 995
Membres
101 857
dernier inscrit
mt60400