IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Problème avec une macro faisant apel à un tableau Excell


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut Problème avec une macro faisant apel à un tableau Excell
    Bonjour à tous,
    j'ai un petit soucis!
    Voilà j'ai une macro qui ouvre un onglet selon le type de projet selectionné dans une liste déroulante. Ca donne ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Valider_Click()
      If Sheets("Couverture").ComboBox1.Text <> "" Then
        Sheets.Add.Name = Sheets("Couverture").Range("C8").Text
        Sheets("Evaluation risque").Range("A1:H50").Copy _
        Destination:=Sheets(Sheets("Couverture").Range("C8").Text).Range("A1")
        Sheets(Sheets("Couverture").Range("nomprojet").Text).Select
      End If
    End Sub
    Et maintenant je voudrais que selon le type de projet, quand je clic sur le bouton, il ne selectionne pas tout le tableau mais qu'il ne selectionne que le cellules que je lui indique dans la feuille nommé "type de projet".
    Avez-vous tout compris?
    Merci à ceux qui m'apporterons leur aide.
    Bonne journée à tous
    Val

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Je ne sais pas si ça va répondre à ta question mais si tu fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Worksheets("type de projet").select
    Range(La cellule que tu veux).select
    ça correspond assez à la question que tu poses telle que tu l'as posée (!?!) Non ?
    A+

  3. #3
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Non ça répond pas tellement à ma question ais je te remercie quand même, c'est gentil.
    Bonne journée

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Et si tu précisais ce que tu veux obtenir (sans le chemin pour le faire)
    A+

  5. #5
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Ba alors je te resume mon programme et je te dirais après ce que je veux modifier.
    J'ai une liste déroulante dans laquelle il y a différents types de projet(ils sont repertoriés dans le meme classeur Excell dans l'onglet "Types de projets"), et j'ai un bouton, quand tu cliques dessus, un nouvel onglet s'ouvre déjà rempli, le programme copie entierement un tableau présent dans l'onglet "Evaluation risque" dans le nouvel onglet.
    Dans l'onglet "Types de projets" j'ai un petit tableau avec les différents types de projets et les cellules du tableau qui corresponde au type.
    Ce que je veux c'est que quand le nouvel onglet s'ouvre le programme aille voir dans le petit tableau quelle cellule il doit copier et qu'il ne copie que celle indiquées.
    C'est compréhensible??!!

  6. #6
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    Bonjour,
    je veux bien essayer de te répondre, mais j'ai besoin de comprendre.

    le type de projet apparait à quel endroit. C'est à dire comment l'utilisateur sélectionne le type de projet.
    les données correspondantes au projet se trouve en lignes, en colonnes ou les deux.

    merci de ces précisions

  7. #7
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Les données correspondant au type de projet sont en colonne.
    c'est gentil de bien vouloir m'aider

  8. #8
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    tu n'as pas répondu à la question la plus importante

    comment l'utilisateur sélectionne le type de projet

  9. #9
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    excuse moi,avec une liste déroulante (qui fais appel à la feuille "Types de projet" dans laquelle il y a les types de projet)

  10. #10
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    ok merci de ta réponse je m'occupe de ça demain matin

    désolé de ne pas être plus rapide mais je dois quitter tôt ce soir

    Pascale

  11. #11
    Nouveau membre du Club
    Inscrit en
    Février 2005
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 27
    Points : 29
    Points
    29
    Par défaut
    et voilà une réponse
    la feuille choix est la feuille où se trouve la liste déroulante (en A1)
    Pour la feuille type de projet on trouve le nom des projet en A1 B1 C1 D1 et les éléments correspondant à chaque projet sur les lignes 2 à 7
    Enfin j'ai collé le résultat sur la feuille "nom de projet" à partir de A1
    J'espère avoir été assez claire et surtout avoir répondu à ta question
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     Sub Macro2()
    'déclaration des variables
    Dim a As String
    Dim i As Integer
    'sélection de la feuille où se trouve la liste déroulante
        Sheets("choix").Select
    ' la variable "a" est égale au choix de l'utilisateur dans la liste déroulante
        a = Range("A1").Value
    'sélection de la feuille "Type de projet"
        Sheets("Type de projet").Select
    'on fait une boucle pour trouver la valeur "a" dans la feuille type de projet
        For i = 1 To 5
            If a = Cells(1, i).Value Then
    'quand la condition est vrai on copie les cellules qui nous intéresse
                 Range(Cells(1, i), Cells(7, i)).Copy
    'et on les copie où on veut sur la feuille "nom du projet"
                 Sheets("nom du projet").Select
                 Range("A1").Select
                 ActiveSheet.Paste
            End If
        Next i
    End Sub

  12. #12
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Pour que ça fonctionne mieux, tu peux faire ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
            If a = Cells(1, i).Value Then
                 Range(Cells(1, i), Cells(7, i)).Copy _
                 destination:=Sheets("nom du projet").Range("A1").Paste
            End If
    (je n'ai pas lu la question et "on" insiste pour que je vienne diner )

  13. #13
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Merci je vais tester ça et je vous direz si ça marche.
    merci encore
    Bonne journée

  14. #14
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    J'y arrive pas!!!!

  15. #15
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Valider_Click()
    'condition:si c'est un élément vide qui a été selectionné dans la liste déroulente
    If Sheets("Couverture").ComboBox1.Text <> "" Then
    'Alors le nouvel onglet est renommé avec la cellule nommé "nomprojet"
    Sheets.Add.Name = Sheets("Couverture").Range("nomprojet").Text
    'et la totalité de la feuille "evaluation risque" est copié dans la nouvelle feuille
    Sheets("Evaluation risque").Range("A1:H42").Copy Destination:=Sheets(Sheets("Couverture").Range("nomprojet").Text).Range("A1")
    'la nouvelle feuille est ouverte.
    Sheets(Sheets("Couverture").Range("nomprojet").Text).Select
    End If
    End Sub
    et en fait à la place de séléctionné les cellules A1à H42 de la feuille évaluation risque, je veux copier que certaines cellules. La liste de ces cellules sont repertoriés dans la feuille "Types de projet" en colonne selon le type de projet et ça commence à la colonne C.

  16. #16
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Je suis desolé, desfois je comprend pas bien ce que tu veux savoir je crois!!! Je n'ai pas de message d'erreur, le programe se contente d'ouvrir un nouvel onglet avec rien dedans, il ne copie rien.

  17. #17
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Points : 870
    Points
    870
    Par défaut
    Bonjour,

    Chez moi ton code marche tres bien, il ajoute la feuille, copie les valeurs A1 a H42 et la selectionne...

  18. #18
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Bonjour tonton fred,
    moi aussi cette partie marche très bien chez moi, c'est l'autre étape qui me donne du fil à retordre!!!

    Voila mon code, après les modifications que j'ai apporté en suivant vos conseil mais j'ai peut être pas tout compris! Je ne suis vraiment pas douée, je suis desolé ça doit vous embêter! Merci de vouloir m'aider, c'est pas simple je l'ai bien compris!!!!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub Valider_Click()
    Dim i As Integer
    Sheets("Couverture").Select
      If Sheets("Couverture").ComboBox1.Text <> "" Then
        Sheets.Add.Name = Sheets("Couverture").Range("C8").Text
          If Sheets("Couverture").ComboBox1.Text = "Progiciel" Then
            Sheets("Types de projets").Select
            For i = 1 To 5
              If Sheets("Couverture").ComboBox1.Text = Cells(1, i).Value Then
                Range("C2:C10").Select
                Sheets("Evaluation risque").Range("(Cells(1, i), Cells(7, i)").Copy Destination:=Sheets(Sheets("Couverture").Range("nomprojet").Value).Range("A1")
              End If
              Next i
          End If
      End If
    End Sub

  19. #19
    Membre éclairé
    Inscrit en
    Avril 2007
    Messages
    667
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2007
    Messages : 667
    Points : 870
    Points
    870
    Par défaut
    Pourrais tu s'il te plait mettre ton code en... code ? C'est plus facile a lire

    Concernant ton probleme:
    Je ne suis pas sur de comprendre pas comment sont ordonnees tes donnees (celles specifiques a chaque projet et que tu veux copier).

    Ce que je comprends:
    Tu ajoutes une feuille si elle n'existe pas, avec le nom du projet dans une cellule (a ce propos un inputbox serait peut etre plus indiquee mais on verra plus tard).
    Dans la feuille "Type de projet" tu as sur la ligne 1 le nom des projets (colonne i).
    Tu veux copier les lignes 1 a 7 de la colonne i de la feuille "Evaluation risque" vers la feuille "nom du projet".

    J'ai bon ?

    et ca
    c'est pourquoi ?

  20. #20
    Membre à l'essai
    Profil pro
    Étudiant
    Inscrit en
    Mai 2007
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2007
    Messages : 65
    Points : 19
    Points
    19
    Par défaut
    Non c'est pas tout à fait ça. Je veux pas copier les lignes 1 a 7 de la colonne i de la feuille "Evaluation risque" vers la feuille "nom du projet". Je veux que les cellules indiquées dans les cellules de la colonne i de la feuille "Type de projets" soit copiées vers "nom du projet".
    Et ça
    c'est rien , je l'ai recopier alors qu'il fallait pas

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 3 123 DernièreDernière

Discussions similaires

  1. [XL-2003] problème avec une macro décimale
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 25/11/2010, 10h34
  2. [XL-2007] problème avec une macro TCD
    Par wsanchez dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/06/2009, 21h05
  3. problème avec une macro
    Par jeanjack dans le forum Débuter
    Réponses: 2
    Dernier message: 21/04/2009, 09h32
  4. Problème avec une macro
    Par Nyck0las dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 28/11/2007, 15h04
  5. Problème avec une macro impression
    Par Border_xls dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/11/2007, 15h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo