OVH Cloud OVH Cloud

Récupération de plage de cellules

6 réponses
Avatar
Nicolas
Bonjour =E0 tous,
Par avance je vous remercie pour votre aide.

Voici mon probl=E8me: J'ai 2 fichiers excel: aaa.xls et=20
bbb.xls
Dans le fichier aaa.xls j'ai une macro vba qui permet=20
d'ouvrir le fichier bbb.xls ('Workbooks.Open "c:\bbb.xls"')

Ensuite un inputbox me permet de copier les valeurs des=20
cellules s=E9lectionner par l'utilisateur dans le fichier=20
bbb.xls et de les coller dans le fichier aaa.xls

Pour cela j'ai besoin de r=E9cup=E9rer la plage de cellules=20
que l'utilisateur s=E9lectionne dans bbb.xls. J'utilise le=20
code suivant:

Dim zone As Range

set Zone =3D ActiveWorkbook.Application.Inputbox
("S=E9lectionner les valeurs =E0 importer.", , Range("A1"), ,=20
Type:=3D8)

Range (Zone.Address).Copy

Tout ceci me permet bien d'afficher la boite de dialogue=20
de s=E9lection de cellules mais je n'ai pas acc=E8s au fichier=20
bbb.xls bien que celui-ci s'ouvre correctement (tout en=20
restant inaccessible).=20

Ce que je voudrais c'est pouvoir permettre =E0 l'utilisateur=20
de s=E9lectionner les cellules qu'il d=E9sire dans le fichier=20
bbb.xls. Peut-=EAtre faut-il jouer sur la modalit=E9 des=20
fichiers excel?...

Merci de votre aide.
Nicolas

6 réponses

Avatar
Pascal Engelmajer
salut,
L'userform est-il non modal lui ( userform1.Show Modal:=vbModeless) ?
si Excel 97 voir appel API Windows
http://longre.free.fr/pages/api/usfnonmodal.htm chez Laurent Longre
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
Avatar
nicolas
Désolé pour l'oubli de précision, je travaille sur excel
XP. En ce qui concerne l'userform, j'avoue ne pas bien
saisir ta remarque, étant donné que je n'utilise aucun
userform.

Je veux juste que le fichier que j'ouvre soit celui qui
est actif de manière à pouvoir sélectionner une plage de
données.

-----Message d'origine-----
salut,
L'userform est-il non modal lui ( userform1.Show
Modal:=vbModeless) ?

si Excel 97 voir appel API Windows
http://longre.free.fr/pages/api/usfnonmodal.htm chez
Laurent Longre

--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel


.



Avatar
Pascal Engelmajer
Salut,
Désolé de mon erreur...
le classeur est-il actif ?
par exemple
dim wb
set wb =Workbooks.Open ("c:bbb.xls"')
wb.Activate
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"nicolas" a écrit dans le message de news:
043c01c3c95f$0fe0e960$
Désolé pour l'oubli de précision, je travaille sur excel
XP. En ce qui concerne l'userform, j'avoue ne pas bien
saisir ta remarque, étant donné que je n'utilise aucun
userform.

Je veux juste que le fichier que j'ouvre soit celui qui
est actif de manière à pouvoir sélectionner une plage de
données.

-----Message d'origine-----
salut,
L'userform est-il non modal lui ( userform1.Show
Modal:=vbModeless) ?

si Excel 97 voir appel API Windows
http://longre.free.fr/pages/api/usfnonmodal.htm chez
Laurent Longre

--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel


.



Avatar
nicolas
Oui le classeur est actif. J'ai même essayé d'activer
aussi la 1ere feuille et de sélectionner la 1ere cellule.
Ca fonctionne uniquement après la fermeture de mon
inputbox.


-----Message d'origine-----
Salut,
Désolé de mon erreur...
le classeur est-il actif ?
par exemple
dim wb
set wb =Workbooks.Open ("c:bbb.xls"')
wb.Activate
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel
"nicolas" a écrit dans le message de
news:

043c01c3c95f$0fe0e960$
Désolé pour l'oubli de précision, je travaille sur excel
XP. En ce qui concerne l'userform, j'avoue ne pas bien
saisir ta remarque, étant donné que je n'utilise aucun
userform.

Je veux juste que le fichier que j'ouvre soit celui qui
est actif de manière à pouvoir sélectionner une plage de
données.

-----Message d'origine-----
salut,
L'userform est-il non modal lui ( userform1.Show
Modal:=vbModeless) ?

si Excel 97 voir appel API Windows
http://longre.free.fr/pages/api/usfnonmodal.htm chez
Laurent Longre

--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel


.




.




Avatar
Pascal Engelmajer
salut,
J'ai testé en Excel 2000 aucun pb ...
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait pas ou il va."
Sénèque.
http://www.ilyapa.net/excel
"nicolas" a écrit dans le message de news:
09ae01c3c964$0d467620$
Oui le classeur est actif. J'ai même essayé d'activer
aussi la 1ere feuille et de sélectionner la 1ere cellule.
Ca fonctionne uniquement après la fermeture de mon
inputbox.


-----Message d'origine-----
Salut,
Désolé de mon erreur...
le classeur est-il actif ?
par exemple
dim wb
set wb =Workbooks.Open ("c:bbb.xls"')
wb.Activate
--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel
"nicolas" a écrit dans le message de
news:

043c01c3c95f$0fe0e960$
Désolé pour l'oubli de précision, je travaille sur excel
XP. En ce qui concerne l'userform, j'avoue ne pas bien
saisir ta remarque, étant donné que je n'utilise aucun
userform.

Je veux juste que le fichier que j'ouvre soit celui qui
est actif de manière à pouvoir sélectionner une plage de
données.

-----Message d'origine-----
salut,
L'userform est-il non modal lui ( userform1.Show
Modal:=vbModeless) ?

si Excel 97 voir appel API Windows
http://longre.free.fr/pages/api/usfnonmodal.htm chez
Laurent Longre

--
Amicalement.
Pascal
"il n'y a pas de vent favorable pour celui qui ne sait
pas ou il va."

Sénèque.
http://www.ilyapa.net/excel


.




.




Avatar
michdenis
Bonjour Nicolas,

Est-ce que tu travailles avec la même instance d'excel pour les 2 fichiers concernés ?

Si chaque fichier est ouvert dans sa propre instance d'excel, ce n'est pas surprenant qu'il ait de la difficulté à se parler
!!!


Salutations!



"Nicolas" a écrit dans le message de news:038e01c3c951$8f356140$
Bonjour à tous,
Par avance je vous remercie pour votre aide.

Voici mon problème: J'ai 2 fichiers excel: aaa.xls et
bbb.xls
Dans le fichier aaa.xls j'ai une macro vba qui permet
d'ouvrir le fichier bbb.xls ('Workbooks.Open "c:bbb.xls"')

Ensuite un inputbox me permet de copier les valeurs des
cellules sélectionner par l'utilisateur dans le fichier
bbb.xls et de les coller dans le fichier aaa.xls

Pour cela j'ai besoin de récupérer la plage de cellules
que l'utilisateur sélectionne dans bbb.xls. J'utilise le
code suivant:

Dim zone As Range

set Zone = ActiveWorkbook.Application.Inputbox
("Sélectionner les valeurs à importer.", , Range("A1"), ,
Type:=8)

Range (Zone.Address).Copy

Tout ceci me permet bien d'afficher la boite de dialogue
de sélection de cellules mais je n'ai pas accès au fichier
bbb.xls bien que celui-ci s'ouvre correctement (tout en
restant inaccessible).

Ce que je voudrais c'est pouvoir permettre à l'utilisateur
de sélectionner les cellules qu'il désire dans le fichier
bbb.xls. Peut-être faut-il jouer sur la modalité des
fichiers excel?...

Merci de votre aide.
Nicolas