jeanluc065
Messages postés134Date d'inscriptionsamedi 23 septembre 2006StatutMembreDernière intervention 1 juin 2007
-
5 oct. 2006 à 12:44
jeanluc065
Messages postés134Date d'inscriptionsamedi 23 septembre 2006StatutMembreDernière intervention 1 juin 2007
-
6 oct. 2006 à 16:22
Bonjour à tous,
Depuis access 2002, qui pourrait m'écrire la syntaxe pour attribuer à toutes les cellules de la colonne 17 de ma feuille (référence) le nom du fichier xls. C:\aa\clients\bruxelles_12345.xls
Ceci pour éviter de devoir passer par une requête update
j'ai déjà ceci pour attribuer une valeur (fichier) à la cellule (1) de la feuille (Référence)
cs_JMO
Messages postés1854Date d'inscriptionjeudi 23 mai 2002StatutMembreDernière intervention24 juin 201827 5 oct. 2006 à 13:22
Bonjour à tous....
Salut Jean-Luc
J'ai avancé un petit peu sur l'un des tes problèmes.
Pour les tests, peux-tu mettre un fichier .xls, qui n'a pas déjà été modifié,
dans un répertoire de test et lancer le bout de code ci-dessous.
Pour mes tests, j'ai crée un .xls avec:
- 4 feuilles, peut importe le nom;
- dans la seconde feuille, j'ai écrit n'importe quoi dans certaines cellules.
Je n'arrive pas à ce que la feuille "Référence" soit positionnée en dernière position.
Le copier/coller des 12 lignes de "ident1" vers "Référence" s'effectue bien.
jean-marc
Dim path: path = "D:\test1_camions" 'mon répertoire de test, avec 1 fichier
Call Modif_File_Excel(path)
Function Modif_File_Excel(path)
Dim fso: Set fso = CreateObject("Scripting.FileSystemObject")
Dim Dossiers: Set Dossiers = fso.GetFolder(path)
Dim fichiers: Set fichiers = Dossiers.Files
Dim fichier, f
For Each fichier In fichiers
Set f = fso.GetFile(fichier)
If fso.GetExtensionName(fichier) = "xls" Then
Dim objExcel : Set objExcel = CreateObject("Excel.Application")
Dim objClasseur : Set objClasseur = objExcel.Workbooks.Open(fichier)
'objExcel.Application.Visible=True 'remet la visibilité
objExcel.ActiveWorkbook.Close 'Fermeture d'Excel
'Destruction des objets
Set objExcel = Nothing
Set objClasseur = Nothing
End If
Set f = Nothing
Next
Set fichiers = Nothing
Set Dossiers = Nothing
Set fso = Nothing
End Function
jeanluc065
Messages postés134Date d'inscriptionsamedi 23 septembre 2006StatutMembreDernière intervention 1 juin 2007 6 oct. 2006 à 16:22
Bonjour Jean-Marc
Dans cette fonction, serait-il possible d'inclure une commande afin que : dans la feuille "ident1" pour effacer les premières colonnes (de une à plusieurs, c'est pas fixe ) si elles sont vides ?
à la suite de
'on copie les lignes 2 à 12 de la feuille "ident1"
objExcel.ActiveWorkbook.Sheets("ident1").Rows("2:12").Copy
'on colle dans la feuille "Référence"
objExcel.ActiveSheet.Paste
'vidage de la mémoire liée à Excel suite à la copie précédente
objExcel.Application.CutCopyMode = False