Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Coller toutes les 4 colonnes en gardant les valeurs précédemment copiées

Vince78740

XLDnaute Nouveau
Bonjour a Tous,

je cherche à créer un petit programme qui me permettrait de remplir une feuille d'un classeur avec les données de feuilles venant de différents classeurs.
Je suis arrivé a copier les données d'une feuille source d'un classeur que je vais sélectionner avec une boite de dialogue, dans le code je lui ai indiqué une cellule où coller la sélection dans ma feuille de destination.
Maintenant Je suis confronté a plusieurs problématiques que je n'arrive pas à résoudre dû a mon manque de connaissance d'Excel.
Mes feuilles sources ont un nombre de colonne fixe de A à D, le nombre de lignes lui peut varié
Pour commencer je voudrais réussir à faire
- Coller toutes les 4 colonnes car je dois garder les données précédentes

Mon approche n'est peut-être la meilleur mais je comptais affecter cette macro à chaque "Machine_X" en spécifiant le Range de destination mais le soucis est que si une ligne est ajoutée, tout est décalé et il faudrait que je modifie le Range de destination de toutes les macros

J'ai tenté pas mal de chose mais il m'en manque toujours un morceaux. Je vais continuer à lire tout ce que je trouve que le sujet même j'en suis certain je passe certainement a coté de la solution.

Merci d'avance pour l'aide que vous pourrez m'apporter.

Vincent

VB:
Sub SelectFichier()
    Dim QuelFichier
    QuelFichier = Application.GetOpenFilename("Excel, *.xlsx")
    If QuelFichier <> False Then
          
        Copie (QuelFichier)
          
        
    Else
        MsgBox "Vous n'avez pas sélectionné de fichier"
    End If
End Sub
  
Sub Copie(QuelFichier)
Dim nomUn, NewBook As Workbook
Set nomUn = ThisWorkbook
 
Set NewBook = Workbooks.Open(QuelFichier)
NewBook.Activate
 
ActiveSheet.Range("$A$1:$G$3000").AutoFilter Field:=1, Criteria1:="<>"
'Selectionner toutes les cellules pleines
Dim MaPlage As Range
Set MaPlage = Range("A1:G" & Range("A1").End(xlDown).Row)
MaPlage.Select
'Copier la selection
Selection.Copy

nomUn.Activate

Worksheets("2021").Range("A3").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False


  
Application.CutCopyMode = False
 
NewBook.Close False
 
End Sub
 

Pièces jointes

  • kpi.xlsx
    13.3 KB · Affichages: 17
  • machine1.xlsx
    9 KB · Affichages: 3
  • machine2.xlsx
    8.7 KB · Affichages: 4
  • kpi.xlsm
    23.7 KB · Affichages: 3

chris

XLDnaute Barbatruc
Bonjour

Pas limpide :

Si je comprends bien tu as plusieurs fichiers machines (2 ?) par mois

Là on a un mois si je comprends bien

Ce genre de synthèse est faisable par PowerQuery, totalement intégré à Excel, mais
  • comment repères-tu les mois ?
  • peux-il y avoir un unique tableau indiquant la période, la machine et la valeur (c'est exploitable ensuite par TCD ou autre
 

Vince78740

XLDnaute Nouveau
Bonjour Chris,

J'ai plusieurs fichiers, une dizaine voir plus dans le temps.
ils ont générés soit par une application soit par un script powershell qui va interroger des baies de stockage (une fois par mois) m'extrait les valeurs dont j'ai besoin et me fait en sortie un fichier .xls que je peux stocker dans n'importe quel répertoire (un fichier par mois nommé avec la date en format mm/dd/yyyy)
le but est d'avoir les valeurs de chaque mois à la suite pour avoir une vision claire de la consommation de volumétrie, donc il est important d'avoir tout dans une seule feuille.
par exemple les valeurs de la machine_1 du mois de juin devront être coller a la suite du mois de mai et ainsi de suite et çà pour toutes les machines.
Concernant les mois je le les inscrit à la mano pour le moment mais s'il le faut j'ai la possibilité de récupérer cette info avec mon script powershell et pour l'application
le fichier kpi est un exemple de comment je compte organiser ma feuille et les feuilles machine_1 et machine_2 sont des exemples de comment sont organisées les valeurs que qui sont générées aujourd'hui
Si je prends une mauvais direction pour formater ma feuille et qu'une autre méthode est plus adaptée ..pas de soucis je suis ouvert à tout les conseilles.
Merci Chris de t 'intéresser a mon cas et j'espère avoir été plus claire.
 

Vince78740

XLDnaute Nouveau
Bonsoir Chris,

Désolé il a fallu que je récupère les fichiers et que je modifie certaines informations ( nom machine et domaine) .
Concernant le formatage des feuilles c'est à identique.
le fichier fic_dst est le fichier où doivent être copiées ou incorporées les données et les 2 fichiers "Domaine" sont les 2 fichiers que je récupère via script ou appli (le nombre de colonnes ne bouges pas , le nombre de lignes lui peut éventuellement changer).
Dans les fichiers "Domain" une machine peut apparaitre dans plusieurs lignes contiguë, c'est qu'elle possède plusieurs "aggr" (la machine_A dans Domain02 par exemple)
C'est un vrai casse-tête !!

et Merci encore
 

Pièces jointes

  • Domain01.xls
    26.5 KB · Affichages: 3
  • Domain02.xls
    26.5 KB · Affichages: 3
  • fic_dst.xlsx
    12.7 KB · Affichages: 2

Vince78740

XLDnaute Nouveau
Pour être précis j'ai fourni que 2 fichiers "Domain" dans la réalité j'en ai une bonne quinzaines voir plus chaque mois. le fichier originale "fic_dst" lui fait plus de 600 lignes.
 

Discussions similaires

Réponses
17
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…