Creation macro sous excel

bolo123 -  
 ju le piaffy -
Bonjour,

j'aimerais créer une macro qui permet lorsque l'on selectionne une ligne d'une feuille de donné et que l'on clic sur un bouton de commande par exemple"affectation" il affecte la lignes de cette feuille de donnée à une autre feuilles du même classeur:
par exemple
prélevement maif---->feuille intitulé"santé"
prelevement GDF----> feuille intituelé"eau et electricite"
et ainsi de suite
j'espere que j'ai été le plus claire possible
pouvez vous m'aidez c'est pour un projet que doit rendre
merci d'avance
Configuration: Windows XP
Internet Explorer 7.0

9 réponses

  1. Manou34 Messages postés 81 Statut Membre 14
     
    slt,

    désolé je n'ai pas trés bien compris ton pb !!

    tu as essayé d'enregistrer uen macro pour voir le code que sa donne ?
    0
  2. bolo123
     
    slt
    je vais essayer d'etre plus claire:
    j'ai une feuille nommer donnée qui comporte 5colonnes (date operation,date operation,Tiers,libellé ,montant)
    et je souhaiterais que chaque operations située sur la feuille de données soit affecter à différentes feuilles du même classeur(edf,nourriture,epargne, salaire ,telecommunication,santé, etc)
    l'idée est que quelqu'un recoit son relevé de compte et afin de mieu gerer son compte il organise son releve de compte en affectant les différentes ecriture à un poste défini (par le biais du bouton "affectation") dans le but de réaliser un TCD et d'avoir des donnée agréger
    j'espere que j'ai été plus claire
    0
  3. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Euh... Je pense que tu fais fausse route!!!

    Il y a HYPER simple.
    Tu rajoutes une colonne "Catégorie".
    Si tu veux TRES bien faire, tu y affectes une validation de données avec une liste contenant les catégories EDF, Santé, Epargne etc...
    Ensuite tu sélectionnes les en-têtes de colonne, et dans le menu Données tu choisis Filtre Automatique.

    T'as une p'tite flêche à droite de chaque colonne, ce qui te permet de faire des tris, des critères etc.
    Et si tu veux totaliser, tu choisis une valeur de critère (Par exemple EDF) tu vas sous la colonne Montant EN LAISSANT UNE LIGNE VIDE et tu cliques sur Somme Automatique, ça va t'insérer une fonction SOUS.TOTAL(9;E2:E325) qui te calculera la somme des valeurs des montants des lignes affichées.

    Et en plus avec ça, ton TCD est pré-mâché!

    Tu connaissais?
    Si quelque chose est pas clair, si je suis allée trop vite... N'hésite pas à poser des questions!!!
    0
  4. bolo123
     
    desole m'ai je n'ai pas trés bien compris comment tu a simplifier je débute
    quant tu dit de faire une validation de donnée j'y ai penser en créant une catégorie qui comporte les lien hypertexte des different feuille sa d'accord mais àpres comment affecter les différente ligne justement a les différente catégories
    (edf,nourriture...)
    excusez moi mais je débute donc désole si je ne m'exprime pas assez clairement
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Validation des données:
    Tu sélectionnes la colonne qui doit contenir la catégorie, menu Données-Validation
    Autoriser une Liste
    Source EDF;Santé;Epargne et les autres...
    Et ensuite tu cliques sur la p'tite flêche et tu choisis ta catégorie!

    Essaye déjà ça.
    0
  7. bolo123
     
    re salut
    j'ai fais exactement ce que vous m'avez dit j'ai un truc de ce genre
    Date Valeur Date Operation Tiers Montant Catégorie
    07/11/2007 07/11/2007 PRLV MAIF 79038 NIO -91,85 Médical
    le problème c'est lorsque je regarde sur la feuille médical il ne l'a pas affecter à la feuille Médical situé sur ce même classeur
    or c'est mon but pr faire apres un TCD en fonction des différentes categorie;pouvez vous m'aider
    merci d'avance pour votre aide
    0
  8. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Bien sûr, que ça ne remplit pas les autres feuilles! Mais pour faire un TCD, tu n'as absolument pas besoin de déplacer les valeurs dans une autre feuille.

    Je ne peux pas te répondre si je ne comprends pas exactement ce que tu veux, mais là je n'arrive pas à comprendre pourquoi tu veux te compliquer la vie!!!
    0
  9. bolo12
     
    bonjour
    j'ai fais comme vous avez dit et la j'ai fait une autre macro pour crée directement un TCD mais il bloque a range"B4" même lorsque j'effectue le Debogage
    'es ce que quelqu'un pourrait m'aider a corriger ce probleme
    merci d'avance

    voila ma macro:
    Private Sub TCD_Click()
    '
    ' TCD Macro
    ' mise en plce du TCD en fonction de l'affectation aux différents postes
    '
    ' Touche de raccourci du clavier: Ctrl+z
    '
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
    "Donnée!R1C2:R43C6").CreatePivotTable TableDestination:="", TableName:= _
    "Tableau croisé dynamique9", DefaultVersion:=xlPivotTableVersion10
    ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
    ActiveSheet.Cells(3, 1).Select
    ActiveSheet.PivotTables("Tableau croisé dynamique9").AddFields RowFields:= _
    "Poste ", ColumnFields:="Date Operation"
    ActiveSheet.PivotTables("Tableau croisé dynamique9").PivotFields("Montant"). _
    Orientation = xlDataField
    Range("B3").Select Selection.Sort Order1:=xlAscending, Type:=xlSortLabels, OrderCustom:=1, _
    Orientation:=xlLeftToRight
    Selection.Group Start:=True, End:=True, Periods:=Array(False, False, False, _
    False, True, False, False)
    Range("F4:F21").Select
    With Selection.Interior
    .ColorIndex = 37
    .Pattern = xlSolid
    End With
    Range("A21:E21").Select
    Range("E21").Activate
    With Selection.Interior
    .ColorIndex = 37
    .Pattern = xlSolid
    End With
    Range("A21").Select
    Selection.Font.Bold = True
    Range("F4").Select
    Selection.Font.Bold = True
    Range("B4:E4").Select
    Selection.Font.Bold = True
    ActiveWorkbook.ShowPivotTableFieldList = False
    End Sub
    0
    1. ju le piaffy
       
      Bonjour
      comment avez vous fait pour créer cette macro ?
      merci
      0
  10. LatelyGeek Messages postés 1774 Date d'inscription   Statut Membre Dernière intervention   550
     
    Tu devrais avoir un retour à la ligne entre Select et Selection...
    0