Bonjour, bonjour amis forumeurs super baleze en language 🙂
J'en appel encore à votre aide (et votre indulgence) concernant une copie de donnée mais dans une forme differente de la source.
Source en colonne => Destination en Ligne
Evidemment j'ai une bonne 100 de fichiers à faire comme ça... 🙁
Voici mon bout de code recomposé par plusieurs trouvaille (notamment ici) :
Et pour être honnete la je bloque sur comment faire 🙁
Si une idée vous vient n'hésitez pas surtout 🙂
Bonne fin de journée
Arno
J'en appel encore à votre aide (et votre indulgence) concernant une copie de donnée mais dans une forme differente de la source.
Source en colonne => Destination en Ligne
Evidemment j'ai une bonne 100 de fichiers à faire comme ça... 🙁
Voici mon bout de code recomposé par plusieurs trouvaille (notamment ici) :
Code:
Sub Importation()
Dim Destination As Workbook, Source As Workbook
'déclaration du fichier de destination
Set Destination = ThisWorkbook 'je dis a excel de prendre le fichier qui est ouvert
'Ajout d'un onglet
Worksheets.Add after:=Sheets(Sheets.Count)
ActiveSheet.Move Before:=Sheets(1)
ActiveSheet.Name = "NSI"
'Format texte
Cells.Select
Selection.NumberFormat = "@"
Range("A1").Select
' On demande le nom du fichier à ouvrir et on le note en A1
Cells(1, 1).Value = Application.GetOpenFilename("Fichier Excel (*.xls), *.xls")
'On ouvre le classeur choisi noté en A1
Set Source = Workbooks.Open(Cells(1, 1).Value)
Destination.Activate 'je dis a excel d activer ce fichier afin de mettre le titre des colonne ci-dessous
'Entetes du tableau
'Site
Cells(3, 1).Value = "GROUPE HOSPITALIER"
Cells(3, 2).Value = "RÉGION AP"
Cells(3, 3).Value = "HÔPITAL"
Cells(3, 4).Value = "Site"
Cells(3, 5).Value = "Opérateur"
Range("A3", "E3").Font.ColorIndex = 8 'Turquoise
'Cells(3, 5).Interior.Color = vbYellow 'Mise en couleur de la cellule
'Identité Bâtiment
Cells(3, 6).Value = "Nom Officiel"
Cells(3, 7).Value = "Nom d'usage"
Cells(3, 8).Value = "Adresse Principale"
Cells(3, 9).Value = "Nombre de secteurs"
'Cells(3, 9).Interior.Color = vbRed 'Mise en couleur de la cellule
Cells(3, 10).Value = "Nom du secteur"
Cells(3, 11).Value = "Année PERMIS de construire"
Cells(3, 12).Value = "ANNÉE fin de construction"
Cells(3, 13).Value = "construction HQE"
Range("F3", "M3").Font.ColorIndex = 5 'Bleu
'Descriptif
Cells(3, 14).Value = "Niveaux superstructure"
Cells(3, 15).Value = "Niveaux infrastructure"
Cells(3, 16).Value = "Hauteur du bâtiment"
Cells(3, 17).Value = "Cote altimétrique"
Cells(3, 18).Value = "Type de cote altimétrique"
Cells(3, 19).Value = "Type de toiture"
Cells(3, 20).Value = "SHOB"
Cells(3, 31).Value = "SHON"
Cells(3, 22).Value = "SDO"
Cells(3, 23).Value = "Niveau de précision"
Cells(3, 24).Value = "Superficie locative"
Cells(3, 25).Value = "conventions internes"
Cells(3, 26).Value = "conventions externes"
Cells(3, 27).Value = "Places de parking"
Range("N3", "AA3").Font.ColorIndex = 46 'Orange
'Activité principale
Cells(3, 28).Value = "Activité principale"
Cells(3, 28).Font.ColorIndex = 29 'Violet
'Classements
Cells(3, 29).Value = "par Commission de sécurité"
Cells(3, 30).Value = "Type"
Cells(3, 31).Value = "Catégorie"
Cells(3, 32).Value = "Classement IGH"
Cells(3, 33).Value = "Avis commission de sécurité"
Cells(3, 34).Value = "Année dernière visite sécurité"
Cells(3, 35).Value = "Capacité de sécurité"
Cells(3, 36).Value = "Accès handicapés"
Cells(3, 37).Value = "Classement monuments historique"
Range("AC3", "AK3").Font.ColorIndex = 7 'Violet
'Données de Gestion
Cells(3, 38).Value = "Statut de l'immeuble"
Cells(3, 39).Value = "Année d'entrée en gestion"
Cells(3, 40).Value = "Année de sortie de gestion"
Cells(3, 41).Value = "Année de mise en exploitation"
Cells(3, 42).Value = "Exploitant / gestionnaire"
Cells(3, 43).Value = "Responsable sécurité incendie"
Cells(3, 44).Value = "Potentiel reconversion"
Range("AL3", "AR3").Font.ColorIndex = 50 'Violet
'Code de copie
Source.Activate 'Activation de la source
'Nb_onglet = Source.Sheets.Count 'je compte les onglets qui se trouvent dans le fichier source - utile dans le nombre n'est pas defini
ligne_debut = 4 'je defini la variable ligne_debut qui correspond la plage de de commencement
variablecolonne = 0 'une variable = 0 pour le comptage des colonnes ??
'Boucle pour tous les onglets à partir du 3 (cela va toujours de 3 à 9 dans ce cas)
For compteur = 3 To 9 ' 9 à remplacer par nb_onglet quand c'est variable
Source.Worksheets(compteur).Activate ' j active les onglets du fichier source
nb_colonne = Range("F4").End(xlToRight).Column 'je compte le nombre de Colonne utilisé dans l onglet en partant de la cellule de depart F4
' La je bloque
variablecolonne = +1
Next
Source.Close 'fermeture du fichier contenant les sources
Destination.Activate ' activation du fichier recevant les données
End Sub
Et pour être honnete la je bloque sur comment faire 🙁
Si une idée vous vient n'hésitez pas surtout 🙂
Bonne fin de journée
Arno
Pièces jointes
Dernière édition: