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

Erreur d'exécution 1004 ...

11 réponses
Avatar
j-pascal
Bonsoir,

Dans le code qui suit, j'ai un bug sur la dernière ligne, avec le msg :
"Erreur d'exécution 1004 - Erreur définie par l'application ou par l'objet"

'--------------------------------------------------
Range(ZoneImpression).Select
Set champExport1 = Selection
champExport1.CopyPicture

ChDrive "C"
ChDir "C:\Documents and Settings\jean-pascal\bureau"

ActiveSheet.Paste
ActiveSheet.ChartObjects.Add(0, 0, champExport1.Width,
champExport1.Height).Chart.Paste

Gestionnaire = [b273].Value

ActiveSheet.ChartObjects(1).Chart.Export "Rtd Abs " & Gestionnaire & " "
_
& Format(Now, "dd-mm-yy") & ".gif", "gif"

etc.... (ce sont les 2 lignes du dessus qui posent pb bien qu'a priori ça
fonctionne au bureau, mais pas chez moi !)
'-----------------------------------------------------

Merci d'avance pour vos lumières ...

Cordialement,

JP

10 réponses

1 2
Avatar
MichDenis
Ta dernière ligne devrait être comme suit :

With ActiveSheet.ChartObjects(1).Chart
.Export "C:AtravailTest.gif", "GIF"
End With

Tu remplaces "C:AtravailTest.gif" qui est le chemin où tu veux
l'enregistrer sous ton disque dur + le nom que tu veux lui donner

Comme ton expression fait référence à une cellule, il m'est difficile
de te donner la syntaxe qui convient à ton exemple.


"j-pascal" a écrit dans le message de news:

Bonsoir,

Dans le code qui suit, j'ai un bug sur la dernière ligne, avec le msg :
"Erreur d'exécution 1004 - Erreur définie par l'application ou par l'objet"

'--------------------------------------------------
Range(ZoneImpression).Select
Set champExport1 = Selection
champExport1.CopyPicture

ChDrive "C"
ChDir "C:Documents and Settingsjean-pascalbureau"

ActiveSheet.Paste
ActiveSheet.ChartObjects.Add(0, 0, champExport1.Width,
champExport1.Height).Chart.Paste

Gestionnaire = [b273].Value

ActiveSheet.ChartObjects(1).Chart.Export "Rtd Abs " & Gestionnaire & " "
_
& Format(Now, "dd-mm-yy") & ".gif", "gif"

etc.... (ce sont les 2 lignes du dessus qui posent pb bien qu'a priori ça
fonctionne au bureau, mais pas chez moi !)
'-----------------------------------------------------

Merci d'avance pour vos lumières ...

Cordialement,

JP
Avatar
j-pascal
Bonsoir,

Merci.

J'ai fait ceci (je réserve le nom pour plus tard) :

With ActiveSheet.ChartObjects(1).Chart
.Export "C:Documents and Settingsjean-pascalbureautest.gif", "GIF"
End With

Même message et ligne ".Export "C: ..." en jaune !

@+ ?

JP


"MichDenis" a écrit dans le message de news:

Ta dernière ligne devrait être comme suit :

With ActiveSheet.ChartObjects(1).Chart
.Export "C:AtravailTest.gif", "GIF"
End With

Tu remplaces "C:AtravailTest.gif" qui est le chemin où tu veux
l'enregistrer sous ton disque dur + le nom que tu veux lui donner

Comme ton expression fait référence à une cellule, il m'est difficile
de te donner la syntaxe qui convient à ton exemple.


"j-pascal" a écrit dans le message de news:

Bonsoir,

Dans le code qui suit, j'ai un bug sur la dernière ligne, avec le msg :
"Erreur d'exécution 1004 - Erreur définie par l'application ou par
l'objet"

'--------------------------------------------------
Range(ZoneImpression).Select
Set champExport1 = Selection
champExport1.CopyPicture

ChDrive "C"
ChDir "C:Documents and Settingsjean-pascalbureau"

ActiveSheet.Paste
ActiveSheet.ChartObjects.Add(0, 0, champExport1.Width,
champExport1.Height).Chart.Paste

Gestionnaire = [b273].Value

ActiveSheet.ChartObjects(1).Chart.Export "Rtd Abs " & Gestionnaire & "
"
_
& Format(Now, "dd-mm-yy") & ".gif", "gif"

etc.... (ce sont les 2 lignes du dessus qui posent pb bien qu'a priori ça
fonctionne au bureau, mais pas chez moi !)
'-----------------------------------------------------

Merci d'avance pour vos lumières ...

Cordialement,

JP




Avatar
MichDenis
| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif", "GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...
Avatar
j-pascal
J'ai oublié de préciser ce qui suit les 2 lignes qui posent pb :

ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete
ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete

Mon image est bien créée, mais le code ne la resélectionne pas pour pouvoir
la supprimer avec avoir été exportée ...

Si j'exécuter pas à pas, je suis bien sur la bonne feuille ! Dois-je insérer
qqch pour forcer l'activation de la feuille ? Est-ce qu'un EnableEvents peut
avoir un impact sur le bon déroulement du code ?

@+ ?

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...




Avatar
j-pascal
J'ai fait un essai en déprotégeant la feuille,

j'obtiens : "Erreur d'exécution 1004 - Impossible de lire la propriété
ChartObjects de la classe Worksheet"

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...




Avatar
MichDenis
Si ton graphe est sélectioné :
Selection.Delete -> c'est suffisant

si il n'est pas sélectionné :

activesheet.Shapes("Graphique 3").Delete -> c'est suffisant

Graphique 3 = Nom du graphe



"j-pascal" a écrit dans le message de news:

J'ai oublié de préciser ce qui suit les 2 lignes qui posent pb :

ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete
ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete

Mon image est bien créée, mais le code ne la resélectionne pas pour pouvoir
la supprimer avec avoir été exportée ...

Si j'exécuter pas à pas, je suis bien sur la bonne feuille ! Dois-je insérer
qqch pour forcer l'activation de la feuille ? Est-ce qu'un EnableEvents peut
avoir un impact sur le bon déroulement du code ?

@+ ?

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...




Avatar
j-pascal
C'est noté, mais le pb c'est que l'erreur située plus haut ne permet pour
l'instant pas d'arriver là.

JP
"MichDenis" a écrit dans le message de news:
eEDHO%
Si ton graphe est sélectioné :
Selection.Delete -> c'est suffisant

si il n'est pas sélectionné :

activesheet.Shapes("Graphique 3").Delete -> c'est suffisant

Graphique 3 = Nom du graphe



"j-pascal" a écrit dans le message de news:

J'ai oublié de préciser ce qui suit les 2 lignes qui posent pb :

ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete
ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete

Mon image est bien créée, mais le code ne la resélectionne pas pour
pouvoir
la supprimer avec avoir été exportée ...

Si j'exécuter pas à pas, je suis bien sur la bonne feuille ! Dois-je
insérer
qqch pour forcer l'activation de la feuille ? Est-ce qu'un EnableEvents
peut
avoir un impact sur le bon déroulement du code ?

@+ ?

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...








Avatar
MichDenis
Est-ce un graphique que tu veux exporter ou une plage de cellule?
dans le dernier cas, voici un exemple émanant du site de Daniel Joss

'--------------------------
Sub exportgif()
Dim Plage As Range
Set Plage = Application.InputBox(Prompt:="Sélectionner votre zone: (Ex. A1:B10) ", _
Title:="Sélection de zone ", Default:="$A$1", Type:=8)
Application.ScreenUpdating = False
Workbooks.Add
Plage.CopyPicture
ActiveSheet.Paste
With ActiveSheet.ChartObjects.Add(0, 0, _
Selection.Width, Selection.Height).Chart
.Paste
.Export "C:ajeterTest.gif", "GIF"
End With
ActiveWorkbook.Close False
End Sub
'--------------------------

C'était mon dernier message sur le sujet.

"j-pascal" a écrit dans le message de news:

J'ai fait un essai en déprotégeant la feuille,

j'obtiens : "Erreur d'exécution 1004 - Impossible de lire la propriété
ChartObjects de la classe Worksheet"

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...




Avatar
j-pascal
Je vais regarder, mais je viens de faire un essai avec le code d'un de tes
"collègues" (qui n'est pas un amateur comme je le suis ...), et j'ai une
ligne de débogage sur ... Chart.Export ...

'----------------
Sub ExportFormeGif()
For Each s In ActiveSheet.Shapes
If s.Type = 13 Then
s.Copy
With ActiveSheet
.ChartObjects.Add(0, 0, s.Width, s.Height * 1.15).Chart.Paste
.ChartObjects(1).Border.LineStyle = 0
.ChartObjects(1).Chart.Export Filename:=s.Name & ".jpg",
FilterName:="jpg" 'ICI !!!
.Shapes(ActiveSheet.Shapes.Count).Delete
End With
End If
Next
End Sub
'----------------

Mon "Excel" peut-il être la cause de ce pb ??

JP


"MichDenis" a écrit dans le message de news:

Est-ce un graphique que tu veux exporter ou une plage de cellule?
dans le dernier cas, voici un exemple émanant du site de Daniel Joss

'--------------------------
Sub exportgif()
Dim Plage As Range
Set Plage = Application.InputBox(Prompt:="Sélectionner votre zone: (Ex.
A1:B10) ", _
Title:="Sélection de zone ", Default:="$A$1", Type:=8)
Application.ScreenUpdating = False
Workbooks.Add
Plage.CopyPicture
ActiveSheet.Paste
With ActiveSheet.ChartObjects.Add(0, 0, _
Selection.Width, Selection.Height).Chart
.Paste
.Export "C:ajeterTest.gif", "GIF"
End With
ActiveWorkbook.Close False
End Sub
'--------------------------

C'était mon dernier message sur le sujet.

"j-pascal" a écrit dans le message de news:

J'ai fait un essai en déprotégeant la feuille,

j'obtiens : "Erreur d'exécution 1004 - Impossible de lire la propriété
ChartObjects de la classe Worksheet"

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...








Avatar
j-pascal
Si je fais ce qui suit, toutes les étapes se déroulent "normalement" : copie
de la plage, création de l'image (du graphique), suppression de l'image
copiée et de l'image crée ...
C'est l'export qui coince !

'------------------------------------------------
ZoneImpression = Range("C274").Value
Range(ZoneImpression).Select
Set champExport1 = Selection
champExport1.CopyPicture
ChDrive "C"
ChDir "C:Documents and Settingsjean-pascalbureau"

ActiveSheet.Paste
ActiveSheet.ChartObjects.Add(0, 0, champExport1.Width,
champExport1.Height).Chart.Paste

Gestionnaire = [b273].Value

'With ActiveSheet.ChartObjects(1).Chart
' .Export "C:Documents and Settingsjean-pascalbureautest.gif", "GIF"
'End With

' ActiveSheet.ChartObjects(1).Chart.Export "Rtd Abs " & Gestionnaire & "
" _
' & Format(Now, "dd-mm-yy") & ".gif", "gif"

ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete
ActiveSheet.Shapes(ActiveSheet.Shapes.Count).Delete
'--------------------------------------------------

JP

"MichDenis" a écrit dans le message de news:

Est-ce un graphique que tu veux exporter ou une plage de cellule?
dans le dernier cas, voici un exemple émanant du site de Daniel Joss

'--------------------------
Sub exportgif()
Dim Plage As Range
Set Plage = Application.InputBox(Prompt:="Sélectionner votre zone: (Ex.
A1:B10) ", _
Title:="Sélection de zone ", Default:="$A$1", Type:=8)
Application.ScreenUpdating = False
Workbooks.Add
Plage.CopyPicture
ActiveSheet.Paste
With ActiveSheet.ChartObjects.Add(0, 0, _
Selection.Width, Selection.Height).Chart
.Paste
.Export "C:ajeterTest.gif", "GIF"
End With
ActiveWorkbook.Close False
End Sub
'--------------------------

C'était mon dernier message sur le sujet.

"j-pascal" a écrit dans le message de news:

J'ai fait un essai en déprotégeant la feuille,

j'obtiens : "Erreur d'exécution 1004 - Impossible de lire la propriété
ChartObjects de la classe Worksheet"

JP

"MichDenis" a écrit dans le message de news:



| With ActiveSheet.ChartObjects(1).Chart
| .Export "C:Documents and Settingsjean-pascalbureautest.gif",
"GIF"
| End With

Cela devrait fonctionner !
Est-ce que c'est la bonne feuille où est le graphe qui est active ?
Cela ne dépend pas du code...








1 2