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 :

copier/coller sur un autre feuille


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 422
    Par défaut
    bonjour j'ai une procédure:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub formule()
     
     
        Range("AF1").Select
        Selection.AutoFilter
        Selection.AutoFilter Field:=32, Criteria1:="1"
        Range("A1").Select
        Range(Selection, Selection.End(xlToRight)).Select
        Range(Selection, Selection.End(xlDown)).Select
        selection.copy
     
    End Sub
    donc cette formule applique un filtre et me copie le contenu.

    j'aimerai bien copier coller sur autre nouvelle feuille qui ecrase la feuille d'origine (celle ou je fais la copie) ou bien remplacer le contenu de la feuille d'origine par ce qui à été copié

    voila merci d'avance

    en faite c'est la seule alternative pour que ca soit pas du tout long à charger mais le problème c'est que je suis incapable d'exporter ce que j'ai copier sur une autre feuille ou de remplacer la totalité de la feuille initiale par le contenu du filtre voila
    merci d'avance

  2. #2
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut copier des cellules filtrées
    Bonjour à toi, Bonjour le Forum,

    Sans un seul qui n'ajoute rien, je peux te proposer

    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
    Public Sub essai()
    'Effacer la Feuille 2
    Worksheets("Feuil2").Cells.ClearContents
    'Mise à jour de l'écran non activée
    Application.ScreenUpdating = False
    'Action sur la Feuille1
    With Worksheets("Feuil1")
        'Pour afficher toutes les occurences
         If .FilterMode = True Then .ShowAllData
       'définition de la cellule en dernière ligne et dernière colonne
        derlign = .Cells(.Rows.Count, 1).End(xlUp).Row
        dercol = .Cells(1, .Columns.Count).End(xlToLeft).Column
        With .Range(.Range("A1"), .Cells(derlign, dercol))
                'le filtre selon le critère choisi
                .AutoFilter Field:=32, Criteria1:="1"
                'copie des seules cellules affichées, donc après filtre
                .SpecialCells(xlCellTypeVisible).Copy Destination:=Sheets("Feuil2").Range("A1")
        End With
    End With
    'mode copy non activé
    Application.CutCopyMode = False
    End Sub
    Reprends toutes les lignes de cette proposition de code, et reviens si nécessaire pour d'éventuelles précisions.

  3. #3
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 422
    Par défaut
    ben visiblement j'ai suivis tes conseils à la lettre et rien n'y fait malheureusement toujours le mm problème

  4. #4
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut méthode find
    Quel problème ?

    Peux-tu préciser sur quelle ligne de code le bug se situe. Et quel est le message d'erreur.

    A la limite, peux-tu mettre ton fichier en pièce jointe
    - en le simplifiant à une seule feuille
    - en conservant le code
    - en remplaçant les données confidentielles (1 seul caractère suffit)
    - en précisant ton critère (valeur et colonne)

    On va y arriver.

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 422
    Par défaut
    alors ça bug dans cette ligne

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Sheets("macopie").Activate
    Sheets("macopie").Range(Cells(1, 1), Cells(UBound(tbl, 2), UBound(tbl, 1))) = Application.WorksheetFunction.Transpose(tbl())
    plus exactement la derniere

  6. #6
    Expert confirmé
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Billets dans le blog
    7
    Par défaut
    Bonjour Huitre, Bonjour le Forum

    J'ai l'impression que ton tableau n''est pas alimenté.

    Mets ta dernière ligne de code - celle qui buggue - en commentaires, et insère au-dessus.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Debug.Print UBound(tbl, 1)
    Debug.Print UBound(tbl, 2)
    Et fais part des résultats affichés dans la fenêtre Exécution

    (Pour afficher la fenêtre Exécution : CTRL + G)

    Il doit y avoir homogénéité entre la colonne de recherche et son numéro

    AG ==> 33
    AF ==> 32

    De plus un fichier joint, même simplifié en 1 seule feuille, serait bienvenu.

  7. #7
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 422
    Par défaut
    alors je pense qu'il est plus judicieux d'envoyer le fichier j'ai inseré un commentaire à la première page visiblement rien n ' y fait

  8. #8
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 422
    Par défaut
    je vais essayer d'exporter la feuille dans le classeur fichierépuré

  9. #9
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2011
    Messages
    422
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2011
    Messages : 422
    Par défaut
    alors merci

    ta formule est geniale en terme de gain de temps

    parcontre j'ai crée un algorithme mais je n'arrive pas à le mettre sous forme de tableau

    donc le voila:

    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
    Sub compteur()
    Dim sh As Worksheet
        Dim Ligne As Long
        For Each sh In Worksheets(Array("AAR35", "AAR", "RST", "PCH", "EXP DIF"))
            Ligne = sh.Range("ae" & sh.Rows.Count).End(xlUp).Row
        For i = 2 To Ligne
        For j = 4 To 27
        For k = 2 To 6
        If Cells(k, 3) = sh.Name Then
            If Cells(1, j) = sh.Cells(i, 32) Then
            Cells(k, j) = Cells(k, j) + 1
            End If
        End If
        Next k
        Next j
        Next i
        Next sh
    End Sub
    le traitement est super long est ce qu'il existe une manière de gagner du temps ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Macro copier coller dans une autre feuille
    Par olivverte dans le forum Excel
    Réponses: 23
    Dernier message: 17/12/2013, 14h35
  2. [XL-2007] Copier Coller Ligne vers autre feuille de même classeur
    Par pasterlouis dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 12/06/2013, 09h58
  3. Copier une image sur une feuille et la coller sur une autre feuille
    Par Hierog dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 17/03/2011, 12h21
  4. Réponses: 8
    Dernier message: 12/08/2009, 11h32
  5. Recherche et copier/coller sur une autre feuille
    Par AzelRoth dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/02/2009, 10h21

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