XL 2010 Récupération des données en les transférant avec des tri et enregistrement

Linda42

XLDnaute Occasionnel
Bonjour la team Excel,

Je souhaite pouvoir créer une fiche annexe (FA) à partir de données du fichier Presta Spé (FB).

Ce que je veux récupérer en automatique est la plage B132:I237 de FB.

Là ou cela se complique, c'est que je souhaiterais que les éléments soient automatiquement trier par date puis par Prestations Spéciales.

Le fichier qui sera créer (FA)devra être également paramétré pour que l'impression tienne en compte la mise en page suivante :
  • suppression de la colonne d (qui permettra le trie de tout le tableau et pas seulement les trois premières colonnes)
  • suppresion de la vba en place concernant le calendrier
  • ajustement de la largeur des colonnes en fonction du contenu (pas de renvoi à la ligne des cellules)
  • mise en page Portrait avec ajustement echelle 1 page en largeur sur deux en longueur
  • centre la page horizontalement
  • ligne à répeter $1:$6
  • Pied de page personnalisé à droite avec le numéro de page

Je souhaiterais que ce fichier (FA) soit enregistré directement dans un dossier précis.

J'ai commencé à faire une vba (que j'utilise pour un autre fichier et que j'essaie d'adapter à celui ci) mais je pense qu'il faut le compléter, car cela concerne uniquement l'enregistrement du fichier et en plus je ne maitrise absolument pas les macros mais une belle motivation pour apprendre à les utiliser:

Sub EnregistrementAnnexePrestaInFacture()
'je déclare mes valeurs

Dim NomDossier As String
Dim Chemin As String
'Je nomme le dossier et donne le chemin de sauvegarde

NomDossier = Application.InputBox("ArchivageFactures:", "Année ?")
Chemin = "C:chemin que je préciserais ultérieurement\" & NomDossier & "\"

If NomDossier = "" Then Exit Sub

ActiveSheet.ExportAsFixedFormat Type:=xlTypexlsx, Filename:= _
Chemin & "AnnexeFactureMois_" & Range("H132").Value & ".xls", quality:= _
xlQualityStandard, includedocproperties:=True, ignoreprintareas:=False, _
openafterpublish:=False

End Sub



Merci à tous
 
Solution
Ci-joint le classeur modifié pour le nom de fichier .
( tu aurais pu le modifier toi-même dans la sub Save_Newbook , variable Dossier )

Quand j'exécute cette procédure, c'est l'ensemble du fichier qui est exporté dans un nouveau classeur et nom la plage que nous avions défini.
Tu as probablement exécuté la Sub Save_Newbook seule ... 🤭
En fait, le module était constitué de 3 Subs .

Du coup, j'ai ré-intégré le save_newbook dans le run_export.

Pour faire ce que tu demandes, il faut exécuter
la sub Test_Export qui appelle la sub Run_Export
Par défaut, cette dernière traite tout ce qui est en dessous et à droite de la cellule B132, donc ta plage que tu pourras éventuellement...

Linda42

XLDnaute Occasionnel
En fait, cela n'a rien à voir avec la demande initiale,
ce que tu désires faire en plus , c'est exporter le nouveau classeur en PDF ? 🤔
Faut-il continuer à l'enregistrer en xlsx quand même ?
Non, désolée, je me suis mal fait comprendre, je voudrais en fait la même procédure pour pouvoir sauvegardé le fichier xsl qui c'est créer de façon à mettre le dossier dans le dossier correspondant à l'année effective.
EN faite dans le dossier "C:\Users\linda\OneDrive\Documents\COLIS LOIRE EXPRESS\Gestion Clients\Factures\ArchivageFactures, il y a des dossiers 2021, 2021, 2022 etc...., et je souhaiterais avoir la possibilité de le classer dans l'année effective.
Si jamais je mets directement le chemin "C:\Users\linda\OneDrive\Documents\COLIS LOIRE EXPRESS\Gestion Clients\Factures\ArchivageFactures\2021 dans la vba, les documment correpondant à l'année 2022 et ainsi de suite seront classés dans 2021, et non dans le bon dossier

Cdt
 

fanch55

XLDnaute Barbatruc
Peux-tu me confirmer le nom propre de fichier que le Classeur doit avoir ?
Actuellement, selon ta première demande, cela donne :
Annexe1_FactureMois_sept_2020.xlsx

Ce qui ferait un nom complet de fichier :
C:\Users\linda\OneDrive\Documents\COLIS LOIRE EXPRESS\Gestion Clients\Factures\ArchivageFactures \2020\Annexe1_FactureMois_sept_2020.xlsx
 

Linda42

XLDnaute Occasionnel
Peux-tu me confirmer le nom propre de fichier que le Classeur doit avoir ?
Actuellement, selon ta première demande, cela donne :
Annexe1_FactureMois_sept_2020.xlsx

Ce qui ferait un nom complet de fichier :
C:\Users\linda\OneDrive\Documents\COLIS LOIRE EXPRESS\Gestion Clients\Factures\ArchivageFactures \2020\Annexe1_FactureMois_sept_2020.xlsx
Bonjour,
ce sera C:\Users\linda\OneDrive\Documents\COLIS LOIRE EXPRESS\Gestion Clients\Factures\AnnexeFactures \2020\Annexe1_FactureMois_sept_2020.xlsx

Et en 2021
C:\Users\linda\OneDrive\Documents\COLIS LOIRE EXPRESS\Gestion Clients\Factures\AnnexeFactures \2021\Annexe1_FactureMois_sept_2021.xlsx

cdt
 

fanch55

XLDnaute Barbatruc
Ci-joint le classeur modifié pour le nom de fichier .
( tu aurais pu le modifier toi-même dans la sub Save_Newbook , variable Dossier )

Quand j'exécute cette procédure, c'est l'ensemble du fichier qui est exporté dans un nouveau classeur et nom la plage que nous avions défini.
Tu as probablement exécuté la Sub Save_Newbook seule ... 🤭
En fait, le module était constitué de 3 Subs .

Du coup, j'ai ré-intégré le save_newbook dans le run_export.

Pour faire ce que tu demandes, il faut exécuter
la sub Test_Export qui appelle la sub Run_Export
Par défaut, cette dernière traite tout ce qui est en dessous et à droite de la cellule B132, donc ta plage que tu pourras éventuellement décaler du moment où sa largeur et composition ne changent pas .

 

Pièces jointes

  • Gestion-livraison-spé.xlsm
    85.6 KB · Affichages: 10

Linda42

XLDnaute Occasionnel
Ci-joint le classeur modifié pour le nom de fichier .
( tu aurais pu le modifier toi-même dans la sub Save_Newbook , variable Dossier )


Tu as probablement exécuté la Sub Save_Newbook seule ... 🤭
En fait, le module était constitué de 3 Subs .

Du coup, j'ai ré-intégré le save_newbook dans le run_export.

Pour faire ce que tu demandes, il faut exécuter
la sub Test_Export qui appelle la sub Run_Export
Par défaut, cette dernière traite tout ce qui est en dessous et à droite de la cellule B132, donc ta plage que tu pourras éventuellement décaler du moment où sa largeur et composition ne changent pas .
Bonsoir,
C'est parfait. Tout fonctionne comme je le veux.
Un grand merci pour ton aide.
Au plaisir de te relire

Cdt
 

Discussions similaires

Réponses
1
Affichages
144
Réponses
22
Affichages
1 K

Statistiques des forums

Discussions
312 102
Messages
2 085 304
Membres
102 857
dernier inscrit
Nony1931