Bonjour,
je voudrais un petit module "d'import" sur mon classeur "MOI.xls" (le nom
n'est pas fixe)
En fait, je voudrais une msgbox qui demande quel fichier il faut traiter,
puis faire le traitement suivant :
1/ sélectionner de la cellule A2 à la dernière colonne de la dernière ligne
A saisie
2/ copier cette sélection
3/ coller la selection sur l'onglet "Alpha" de mon classeur "MOI.xls", à
partir de la cellule A3.
pour le petit 1, c'est par raccourci : Ctrl+Shift+fleche bas+fleche droite
2fois
sur cjoint, un modele de ce que je veux selectionner, soit [A2:F179]
http://cjoint.com/?bgr3KyPCTU
du lecteur et du chemin de ton dossier dans lequel figurent tes fichiers
Une boîte de dialogue te demande dans ce dossier de choisir le fichier à ouvrir puis recopie dans ton fichier "MOI.xls" onglet "Alpha" tes données et referme le fichier
Je suppose qu'à l'ouverture du fichier sélectionné l'onglet présenté est celui des données à récupérer sinon il me faut son nom pour le rajouter dans le code
du lecteur et du chemin de ton dossier dans lequel figurent tes fichiers
Une boîte de dialogue te demande dans ce dossier de choisir le fichier à
ouvrir puis recopie dans ton fichier "MOI.xls" onglet "Alpha" tes données et
referme le fichier
Je suppose qu'à l'ouverture du fichier sélectionné l'onglet présenté est
celui des données à récupérer sinon il me faut son nom pour le rajouter dans
le code
du lecteur et du chemin de ton dossier dans lequel figurent tes fichiers
Une boîte de dialogue te demande dans ce dossier de choisir le fichier à ouvrir puis recopie dans ton fichier "MOI.xls" onglet "Alpha" tes données et referme le fichier
Je suppose qu'à l'ouverture du fichier sélectionné l'onglet présenté est celui des données à récupérer sinon il me faut son nom pour le rajouter dans le code
Fais des essais et dis moi !!!!
Sunburn
Salut, ok, je comprend l'esprit, mais mon fichier MOI.xls n'est pas figé, donc je ne peux pas le nommé. De plus, l'emplacement est différent lui aussi. Donc j'ai commencé à adapter ton code. Suis-je sur la bonne voie ?? **Le chemin que la boite de dialogue montre n'est pas l'emplacement de mon fichier de base, je me suis planté quelque part" Merci. YANN ---- Sub ImportBal() Chemin = ThisWorkbook.path MsgBox ("Ce module va vous permettre d'importer la balance. Choisissez le fichier de votre balance") 'ChDrive ("C") ChDir (Chemin) Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy Thisworkbooks.Sheets("Balances").Range ("A3") ActiveWorkbook.Close
du lecteur et du chemin de ton dossier dans lequel figurent tes fichiers
Une boîte de dialogue te demande dans ce dossier de choisir le fichier à ouvrir puis recopie dans ton fichier "MOI.xls" onglet "Alpha" tes données et referme le fichier
Je suppose qu'à l'ouverture du fichier sélectionné l'onglet présenté est celui des données à récupérer sinon il me faut son nom pour le rajouter dans le code
Fais des essais et dis moi !!!!
Salut,
ok, je comprend l'esprit, mais mon fichier MOI.xls n'est pas figé, donc je
ne peux pas le nommé.
De plus, l'emplacement est différent lui aussi.
Donc j'ai commencé à adapter ton code.
Suis-je sur la bonne voie ??
**Le chemin que la boite de dialogue montre n'est pas l'emplacement de mon
fichier de base, je me suis planté quelque part"
Merci. YANN
----
Sub ImportBal()
Chemin = ThisWorkbook.path
MsgBox ("Ce module va vous permettre d'importer la balance. Choisissez le
fichier de votre balance")
'ChDrive ("C")
ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),")
ActiveSheet.Range("A2",
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy
Thisworkbooks.Sheets("Balances").Range ("A3")
ActiveWorkbook.Close
du lecteur et du chemin de ton dossier dans lequel figurent tes fichiers
Une boîte de dialogue te demande dans ce dossier de choisir le fichier à
ouvrir puis recopie dans ton fichier "MOI.xls" onglet "Alpha" tes données et
referme le fichier
Je suppose qu'à l'ouverture du fichier sélectionné l'onglet présenté est
celui des données à récupérer sinon il me faut son nom pour le rajouter dans
le code
Salut, ok, je comprend l'esprit, mais mon fichier MOI.xls n'est pas figé, donc je ne peux pas le nommé. De plus, l'emplacement est différent lui aussi. Donc j'ai commencé à adapter ton code. Suis-je sur la bonne voie ?? **Le chemin que la boite de dialogue montre n'est pas l'emplacement de mon fichier de base, je me suis planté quelque part" Merci. YANN ---- Sub ImportBal() Chemin = ThisWorkbook.path MsgBox ("Ce module va vous permettre d'importer la balance. Choisissez le fichier de votre balance") 'ChDrive ("C") ChDir (Chemin) Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy Thisworkbooks.Sheets("Balances").Range ("A3") ActiveWorkbook.Close
du lecteur et du chemin de ton dossier dans lequel figurent tes fichiers
Une boîte de dialogue te demande dans ce dossier de choisir le fichier à ouvrir puis recopie dans ton fichier "MOI.xls" onglet "Alpha" tes données et referme le fichier
Je suppose qu'à l'ouverture du fichier sélectionné l'onglet présenté est celui des données à récupérer sinon il me faut son nom pour le rajouter dans le code
Fais des essais et dis moi !!!!
FFO
Rebonjour à toi
ThisWorkbook représente le classeur qui possède la macro en cours d'éxécution Donc
Chemin = ThisWorkbook.Path
représente l'adresse de ce fichier
Est ce celui attendu ????
Sinon peut être utiliser ceci :
Chemin = ActiveWorkbook.Path
Chemin représentera l'adresse du fichier actif et non celui de la macro en cours
De plus la ligne :
'ChDrive ("C")
est indispensable si le dernier lecteur utilisé pour cette fonction était un autre lecteur Il doit donc ne pas être précédé d'une cote Il faut mettre:
ChDrive ("C")
Le lecteur doit correspondre à celui de la variable Chemin
Si le lecteur est amené à changer selon le fichier que représente la variable Chemin Tu peux mettre ceci pour adapter le code :
Je pense qu'avec tout celà tu devrait trouver ton bonheur
Dis moi !!!!
Sunburn
Re, c'est deja vachement mieux, mais il plante "objet requis" il plante là **** (je te redonne toute ma macro):merci. YANN --- Sub ImportBal() rep = MsgBox("Ce module va vous permettre d'importer la balance en choisissant le fichier de votre choix." _ & vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo) If rep = vbNo Then Exit Sub Chemin = ActiveWorkbook.path ChDrive (Mid(ActiveWorkbook.path, 1, 1)) ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy ******* Thisworkbooks.Sheets("Balances").Range ("A3") '************** ActiveWorkbook.Close End Sub ---
Re,
c'est deja vachement mieux, mais il plante "objet requis"
il plante là **** (je te redonne toute ma macro):merci. YANN
---
Sub ImportBal()
rep = MsgBox("Ce module va vous permettre d'importer la balance en
choisissant le fichier de votre choix." _
& vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo)
If rep = vbNo Then Exit Sub
Chemin = ActiveWorkbook.path
ChDrive (Mid(ActiveWorkbook.path, 1, 1))
ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),")
ActiveSheet.Range("A2",
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy
******* Thisworkbooks.Sheets("Balances").Range ("A3") '**************
ActiveWorkbook.Close
End Sub
---
Re, c'est deja vachement mieux, mais il plante "objet requis" il plante là **** (je te redonne toute ma macro):merci. YANN --- Sub ImportBal() rep = MsgBox("Ce module va vous permettre d'importer la balance en choisissant le fichier de votre choix." _ & vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo) If rep = vbNo Then Exit Sub Chemin = ActiveWorkbook.path ChDrive (Mid(ActiveWorkbook.path, 1, 1)) ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy ******* Thisworkbooks.Sheets("Balances").Range ("A3") '************** ActiveWorkbook.Close End Sub ---
michdenis
sur ta ligne de code Thisworkbooks ne prend pas un S
"Sunburn" a écrit dans le message de news: Re, c'est deja vachement mieux, mais il plante "objet requis" il plante là **** (je te redonne toute ma macro):merci. YANN --- Sub ImportBal() rep = MsgBox("Ce module va vous permettre d'importer la balance en choisissant le fichier de votre choix." _ & vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo) If rep = vbNo Then Exit Sub Chemin = ActiveWorkbook.path ChDrive (Mid(ActiveWorkbook.path, 1, 1)) ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy ******* Thisworkbooks.Sheets("Balances").Range ("A3") '************** ActiveWorkbook.Close End Sub ---
sur ta ligne de code Thisworkbooks ne prend pas un S
"Sunburn" <Sunburn@discussions.microsoft.com> a écrit dans le message de
news: 99615038-AF62-4BA2-9744-70D2230192FE@microsoft.com...
Re,
c'est deja vachement mieux, mais il plante "objet requis"
il plante là **** (je te redonne toute ma macro):merci. YANN
---
Sub ImportBal()
rep = MsgBox("Ce module va vous permettre d'importer la balance en
choisissant le fichier de votre choix." _
& vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo)
If rep = vbNo Then Exit Sub
Chemin = ActiveWorkbook.path
ChDrive (Mid(ActiveWorkbook.path, 1, 1))
ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),")
ActiveSheet.Range("A2",
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy
******* Thisworkbooks.Sheets("Balances").Range ("A3") '**************
ActiveWorkbook.Close
End Sub
---
sur ta ligne de code Thisworkbooks ne prend pas un S
"Sunburn" a écrit dans le message de news: Re, c'est deja vachement mieux, mais il plante "objet requis" il plante là **** (je te redonne toute ma macro):merci. YANN --- Sub ImportBal() rep = MsgBox("Ce module va vous permettre d'importer la balance en choisissant le fichier de votre choix." _ & vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo) If rep = vbNo Then Exit Sub Chemin = ActiveWorkbook.path ChDrive (Mid(ActiveWorkbook.path, 1, 1)) ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy ******* Thisworkbooks.Sheets("Balances").Range ("A3") '************** ActiveWorkbook.Close End Sub ---
Sunburn
Merci, oui c'est mieux, mais tout de même il plante. et au niveau d'excel, j'ai mon fichier à copier qui est actif, les cellules voulues selectionnées, mais rien ne se colle dans mon fichier propriétaire des macros (Thisworkbook normalement,non ?)
Merci de votre aide. YANN
"michdenis" a écrit :
sur ta ligne de code Thisworkbooks ne prend pas un S
"Sunburn" a écrit dans le message de news: Re, c'est deja vachement mieux, mais il plante "objet requis" il plante là **** (je te redonne toute ma macro):merci. YANN --- Sub ImportBal() rep = MsgBox("Ce module va vous permettre d'importer la balance en choisissant le fichier de votre choix." _ & vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo) If rep = vbNo Then Exit Sub Chemin = ActiveWorkbook.path ChDrive (Mid(ActiveWorkbook.path, 1, 1)) ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy ******* Thisworkbooks.Sheets("Balances").Range ("A3") '************** ActiveWorkbook.Close End Sub ---
Merci, oui c'est mieux, mais tout de même il plante.
et au niveau d'excel, j'ai mon fichier à copier qui est actif, les cellules
voulues selectionnées, mais rien ne se colle dans mon fichier propriétaire
des macros (Thisworkbook normalement,non ?)
Merci de votre aide.
YANN
"michdenis" a écrit :
sur ta ligne de code Thisworkbooks ne prend pas un S
"Sunburn" <Sunburn@discussions.microsoft.com> a écrit dans le message de
news: 99615038-AF62-4BA2-9744-70D2230192FE@microsoft.com...
Re,
c'est deja vachement mieux, mais il plante "objet requis"
il plante là **** (je te redonne toute ma macro):merci. YANN
---
Sub ImportBal()
rep = MsgBox("Ce module va vous permettre d'importer la balance en
choisissant le fichier de votre choix." _
& vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo)
If rep = vbNo Then Exit Sub
Chemin = ActiveWorkbook.path
ChDrive (Mid(ActiveWorkbook.path, 1, 1))
ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),")
ActiveSheet.Range("A2",
ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy
******* Thisworkbooks.Sheets("Balances").Range ("A3") '**************
ActiveWorkbook.Close
End Sub
---
Merci, oui c'est mieux, mais tout de même il plante. et au niveau d'excel, j'ai mon fichier à copier qui est actif, les cellules voulues selectionnées, mais rien ne se colle dans mon fichier propriétaire des macros (Thisworkbook normalement,non ?)
Merci de votre aide. YANN
"michdenis" a écrit :
sur ta ligne de code Thisworkbooks ne prend pas un S
"Sunburn" a écrit dans le message de news: Re, c'est deja vachement mieux, mais il plante "objet requis" il plante là **** (je te redonne toute ma macro):merci. YANN --- Sub ImportBal() rep = MsgBox("Ce module va vous permettre d'importer la balance en choisissant le fichier de votre choix." _ & vbLf & "Etes-vous sûr de vouloir continuer", vbYesNo) If rep = vbNo Then Exit Sub Chemin = ActiveWorkbook.path ChDrive (Mid(ActiveWorkbook.path, 1, 1)) ChDir (Chemin)
Workbooks.Open Filename:=Application.GetOpenFilename("(*.xls),") ActiveSheet.Range("A2", ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Address).Copy ******* Thisworkbooks.Sheets("Balances").Range ("A3") '************** ActiveWorkbook.Close End Sub ---