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

Activer une feuille Sheet

2 réponses
Avatar
Denys
Bonjour,

J'utilise la code de Ron De Bruin afinn de copier une feuille excel et de l=
'ins=C3=A9rer dans un message Outlook. Ca fonctionne =C3=A0 merveille.

Dans l'ex=C3=A9cution du code, excel cr=C3=A9e un fichier temporaire et l'i=
nformation y est inscrite en valeur (PasteValue).

Cependant, j'aurais besoin de copier la rang=C3=A9e 34 (ou du moins la plag=
e "B34:J34") du fichier original dans le fichier temporaire, parce que cett=
e plage contient un hyperlien. UNe fois l'hyperlien copi=C3=A9 et coll=C3=
=A9, il se transpose dans Outlook sans probl=C3=A8me.

Mon probl=C3=A8me est qu'=C3=A0 chaque fois que l'usager utilise la fonctio=
n durant la journ=C3=A9e, le fichier temporaire change de nom....

Alors comment faire pour dire =C3=A0 excel dans le cours d'ex=C3=A9cution d=
u code
=20
Windows("REEE (Carol).xlsm").Activate
Rows("34:34").Select
Selection.Copy
Windows("sheet (peu importe le chiffre").Activate
Rows("34:34").Select
ActiveSheet.Paste

Je bloque l=C3=A0-dessus...

Merci pour votre temps

Denys

2 réponses

Avatar
Denys
Finalement, je crois avoir trouvé...

J'insère l'hyperlien dans la cellule et cela semble marcher....

S'il y a de quoi, je reviens demain

Denys
Avatar
MichD
Bonjour,

Au besoin, tu peux essayer ceci :


'----------------------------------------
Sub TEST()
Dim Wk As Workbook
Dim Source As Range
Dim Dest As Range


'Avec le classeur actuel où tu places la macro
With ThisWorkbook
.Activate
'Avec une feuille donnée. Si c'est avec la feuille active
'On peut utiliser la ligne de code suivante à la place
' With .ActiveSheet ' OU
With .Worksheets("SonNOm")
'Détermine la plage à copier
Set Source = .Rows("34:34")
End With
End With

'Crée un nouveau classeur avec seulement une feuille
Set Wk = Workbooks.Add(-4167)
'Détermine où les données seront copiées
Set Dest = Wk.Sheets(1).Range("A1")

Source.Copy Dest

'La suite, tu peux envoyer le classeur Wk par mail...


'Et pour se débarasser du fichier sans sauvegarde
Wk.Close False
End Sub
'----------------------------------------