Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA(Excel)Comment acceder sur un 2ème classeur ouvert

2 réponses
Avatar
Claude l''ancien
Bonjour à tous
J'ai un fichier Excel ouvert contenenant 2 classeurs.
Après avoir récupéré une valeur sur le 1er classeur (ça grace à vous, je
sais maintenant comment faire), par une procédure contenue dans mon 1er
classeur, je veux la transférer dans une cellule du 2ème classeur.
J'ai déja fait [ Workbooks(2).Activate ], mais pour définir un Range du 2ème
classeur, je n'ai pas trouvé.
Pouvez vous m'aider s'il vous plait.
Merci de votre précieuse réponse
Claude Azoulai

2 réponses

Avatar
Gloops
Bonjour,

Oh, voilà une version d'Excel avec laquelle je n'ai pas travaillé. Mais
comme le message remonte à dix jours, je m'en vais m'y coller, on verra
bien.

Le fait d'avoir deux classeurs dans le même fichier est pour moi une
nouveauté, mais si on a Workbooks(2), c'est qu'on a accès au classeur.

Je m'attends à ce qu'en-dessous il n'y ait guère de changement, donc, on
va pouvoir accéder à un champ par une de ces syntaxes :

Dim S As Worksheet
Dim F As Field

Set S = Workbooks(2).Worksheets(1)
'première feuille du deuxième classeur

Set F = S.Cells(1, 1) 'A1

Set F = S.Range(Cells(1, 1), Cells(2, 2)) 'A1:B2

Set F = S.Range("A1:B2")


En cas de doute on pourra presser la touche F2 pour accéder à
l'explorateur d'objets.
__________________________
Claude l''ancien a écrit :
Bonjour à tous
J'ai un fichier Excel ouvert contenenant 2 classeurs.
Après avoir récupéré une valeur sur le 1er classeur (ça grace à vous, je
sais maintenant comment faire), par une procédure contenue dans mon 1er
classeur, je veux la transférer dans une cellule du 2ème classeur.
J'ai déja fait [ Workbooks(2).Activate ], mais pour définir un Range du 2ème
classeur, je n'ai pas trouvé.
Pouvez vous m'aider s'il vous plait.
Merci de votre précieuse réponse
Claude Azoulai


Avatar
Gloops
Gloops a écrit :
Dim S As Worksheet
Dim F As Field



J'ai sorti une ânerie.

C'était :
Dim F As Range

du coup R aurait été bien, enfin ça peu importe.