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

Macro qui ne fonctionne plus...

13 réponses
Avatar
EricC
Bonjour =C3=A0 tous,
J'esp=C3=A8re que vous vous portez bien !

Mon soucis est que depuis le passage de Excel 2002-SP2 et Win 7 vers Office=
365 sous Win 10, ma macro ne fonctionne plus.

C'est une macro qui me permettait de cr=C3=A9er un fichier jpg =C3=A0 parti=
r d'une zone d=C3=A9finie en vue de l'exporter ensuite vers un site interne=
t.

Voici le code qui pose probl=C3=A8me

Sub Jpg_internet()
Application.ScreenUpdating =3D False

With Sheets("BILLARD") 'exportation classement.jpg
.Activate
Workbooks.Add
.Range("d48:s62").CopyPicture
With ActiveSheet
.Paste
With .ChartObjects.Add(0, 0, _
Selection.Width, Selection.Height).Chart
.Paste
.ChartArea.Border.LineStyle =3D 0
End With
With .ChartObjects(1)
.Top =3D 0
.Left =3D 0
.Chart.Export "D:\Docs Eric\classement.jpg", "JPG"
End With
End With
End With
Application.DisplayAlerts =3D False
ActiveSheet.Delete
ActiveWorkbook.Close
Application.DisplayAlerts =3D True
Sheets("BILLARD").Activate

End Sub

Le message d'erreur appara=C3=AEt =C3=A0 la ligne
.Chart.Export "D:\Docs Eric\classement.jpg", "JPG"

Avez-vous une id=C3=A9e ?

Merci de votre aide
Eric

3 réponses

1 2
Avatar
MichD
Windows 10
Je travaille avec Windows et Excel 2016. Les fichiers .jpg sont ouverts
sur mon ordinateur avec l'application "Photo" de Microsoft. Utilises-tu
le même type d'environnement?
J'ai apporté 2 petites modifications à la procédure. Il est difficile
d'effectuer un test pour corriger un défaut que la macro ne génère pas
lors de son exécution dans mon environnement.
Je suis à court de suggestions!
'------------------------------------------------
Sub Image_Range_Vers_Un_Fichier()
Dim objChart As Chart, Sh As Worksheet
Dim Fichier As String, Rg As Range
'chemin du répertoire et nom du fichier image
Fichier = "D:Docs Ericclassement.jpg"
With Worksheets("BILLARD")
    Set Rg = .Range("d48:s62")
    Rg.CopyPicture xlScreen, xlBitmap 'Modifier
End With
Set Sh = Worksheets.Add
With Sh
    .Shapes.AddChart
    .Activate
    With .Shapes.Item(1)
        .Left = Sh.Range("A1").Left
        .Top = Sh.Range("A1").Top
        .Width = Rg.Width
        .Height = Rg.Height
    .LockAspectRatio = False 'Or msoTrue , Teste!
        .Select
    End With
    Set objChart = ActiveChart
    With objChart
        .Paste
        .Export Fichier
    End With
    Application.DisplayAlerts = False
    .Delete
    Application.DisplayAlerts = False
End With
End Sub
'------------------------------------------------
MichD
Avatar
EricC
Bonsoir,
Je travaille aussi avec Windows 10 et Office 365.
J'ouvre les fichiers jpg avec XnView, mais j'ai essayé avec Photo, pas de différence.
J'ai testé les modifications que tu m'as fait parvenir, avec LockAspec tRatio = False et puis = msoTrue, rien n'y fait, pas de changement.
Dommage..., mais pour m'en sortir, je peux éditer les fichiers jpg et les redimensionner manuellement dans XnView pour que ce soit lisible.
Je me rends compte que tu m'as bien aidé et je te remercie d'avoir pas sé du temps à cela.
Si tu as encore une idée, n'hésite pas, je reste dispo :-)
Encore merci
A plus
Eric
Avatar
MichD
Le 04/05/20 à 14:52, EricC a écrit :
Bonsoir,
Je travaille aussi avec Windows 10 et Office 365.
J'ouvre les fichiers jpg avec XnView, mais j'ai essayé avec Photo, pas de différence.
J'ai testé les modifications que tu m'as fait parvenir, avec LockAspectRatio = False et puis = msoTrue, rien n'y fait, pas de changement.
Dommage..., mais pour m'en sortir, je peux éditer les fichiers jpg et les redimensionner manuellement dans XnView pour que ce soit lisible.
Je me rends compte que tu m'as bien aidé et je te remercie d'avoir passé du temps à cela.
Si tu as encore une idée, n'hésite pas, je reste dispo :-)
Encore merci
A plus
Eric

Juste pour curiosité, quel est le programme par défaut pour l'extension
.jpg sur ton ordinateur? Dans le rectangle près du bouton démarrer, type
"application par défaut pour chaque type de fichier". Moi, c'est photo.
Aucune idée si cela peut faire une différence...
MichD
1 2