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 :

Macro importer et supprimer des données


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut
    bonjour à tous
    Je suis nouveau ici, et je me permets de solliciter votre aide.
    Pour ma part, j'utilise excel au uotidien, mais je n'ai aucune connaissance de VBA ; aussi désolé si ma question semble un peu futile.
    Je vous explique mon probleme :
    Pour un besoin de reporting, je dois avoir un fichier avec un onglet source où je vois tous les departements mais chaque departement ne voit que le sien.
    Aussi, j'ai crée 6 fichier avec l'onglet source 1 et source 2;
    Aujourd'hui , je copie colle 6 fois l'onglet 1 et 6 fois l'onglet 2 ; sauf que le fochier fait des milliers de lignes et une fois sur 2 tout plante.

    pourriez vous m'aider s'il vous plait à :
    Créer une macro ui dirait
    Dans le fichier global qui est à cette adresse, prendre l'onglet 1 et 2 et les coller dans les fichiers
    Departement 1
    Department 2 etc
    le nom du departement est un code que je mets dans unnglet administration (poru qu'il ne colle que les données du 1 & du 2)
    je suis ensuite arrivé à créer des TCD/gcD , sauf que je dois tout remettre à la main pour les changer. Afin d'aller plus vite, j'ai ecris janvier et l'année dans deux colonnes séparées avec un format texte/nombre mais pas calendrier.
    Du coup , j'aimerais lancer une macro depuis le fichier global qui fait un copier coller vers le fichier du departement 1.
    lancer une seconde macro depuis le fichier departement 1 qui supprime toutes les données ne lui appartenant pas et qd je choisis la colonne mois année me met à jour tous mes TCD.
    Je me suis permis de mettre en pj deux fichiers poru vous montrer à quoi cela ressemble , ainsi que ma tentative de code
    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
        Mois_analyse = Cells(3, 5)
     
        If Month(Mois_analyse) < 10 Then
            DateCube = Year(Mois_analyse) & "0" & Month(Mois_analyse)
        Else
            DateCube = Year(Mois_analyse) & Month(Mois_analyse)
        End If
     
        ligne = 4
        While Not Cells(ligne, ) = ""
            Activite = Cells(ligne, 3)
            Sheets(Activite).PivotTables("Tableau croisé dynamique").PivotFields("[Temps].[Calendrier-Mois].[Annee]").CurrentPageName = _
                "[Temps].[Calendrier-Mois].[Mois].&[" & DateCube & "]"
            ligne = ligne + 1
        Wend
     
     
    End Sub
    Ficheir Global exemple.xlsx
    Ficheir departement 2.xlsx

    je sais que ce n'est pas le projet du siecle, mais par avance merci pour votre aide

    J'ai essayé de faire ce code pour le copier-coller , mais j'avoue avoir du mal. Si qqun peut m'aider svp?
    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
    23
    24
    25
    26
    27
    Option Explicit
     
    Sub Tst()
    Dim LastRow As Long
    Dim WsDepart As Worksheet
    Dim WsDestination As Worksheet
     
        Set WsDestination = Sheets("Source1")
    	Set WsDestination = Sheets("Source2")
        Set WsDepart = Sheets("Source1) --> Du nouveau fichier ,  mais je ne sais pas où mettre l'adresse
     
     
        LastRow = WsDestination.Range("A:D" & Rows.Count).End(xlUp).Row
     
        Application.ScreenUpdating = False
        WsDepart.Range("A:D").Copy
        WsDestination.Range("A:D" & LastRow + 1).PasteSpecial xlPasteValues
        --> La je veux dire que si dans la colonne D, je vois les données des autres départements alors il faut les enlever.
    	J'essaye avec 
    	If D=value cel "Administration_A1" then true
    	If false = Delete  
     
     
     
        Set WsDestination = Nothing
        Set WsDepart = Nothing
    End Sub
    Dernière modification par AlainTech ; 20/03/2017 à 00h55. Motif: Fusion de 2 messages et balises [code]

Discussions similaires

  1. Réponses: 2
    Dernier message: 08/12/2015, 09h05
  2. macro permettant de supprimer des lignes données
    Par OLIV420 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/08/2010, 17h40
  3. [MySQL] supprimer des données dans la base
    Par Commodore dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 07/02/2006, 02h43
  4. importer et exporter des données
    Par denza1 dans le forum Bases de données
    Réponses: 3
    Dernier message: 13/12/2004, 16h34
  5. Supprimer des données dans un xml
    Par pingoui dans le forum Format d'échange (XML, JSON...)
    Réponses: 49
    Dernier message: 12/08/2004, 16h49

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