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

Créer control image par VBA

18 réponses
Avatar
Christophe CAMPAIN
Bonjour à tous,

Je cherche à créer un control image par VBA.

Private Sub Commande31_Click()
Dim CtlImg As Control
Set CtlImg = CreateControl(Form_Formulaire1, acImage, , , , 200, 50, 100,
100)
End Sub

Ca me renvoi un erreur "incompatibilité de type" avec CreateControl
surligné.

Pourquoi ?

Par avance merci
Kritof

8 réponses

1 2
Avatar
Raymond [mvp]
A ma connaisssance, on ne peut avoir que le size mode (échelle, zoom,
découpage) et la dimension. Le rognage ne fait pas partie d'accès. le
rognage fait plutôt partie des modifs d'images. Mais on n'est jamais sûr.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:
Ok ça marche !!!

Merci pour ton aide précieuse.

Pendant que j'y suis, connais tu une fonction Access Similaire au
"rognage"

des photos avec poignée dans les appli Office (Word / Excel) ?
Sous Excel par exemple :
Selection.ShapeRange.PictureFormat.CropRight = 72#
Selection.ShapeRange.PictureFormat.CropTop = 123#


Avatar
Christophe CAMPAIN
Ok, merci.

Je cherche actuellement sur les archives Google, il semble que ce soit une
question relativement fréquente, mais pour laquelle je n'ai pas encore
trouvé de réponse (l'essentiel des post étant en anglais...)

Merci,
@+
Kristof

"Raymond [mvp]" a écrit dans le message de
news:%
A ma connaisssance, on ne peut avoir que le size mode (échelle, zoom,
découpage) et la dimension. Le rognage ne fait pas partie d'accès. le
rognage fait plutôt partie des modifs d'images. Mais on n'est jamais sûr.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:
Ok ça marche !!!

Merci pour ton aide précieuse.

Pendant que j'y suis, connais tu une fonction Access Similaire au
"rognage"

des photos avec poignée dans les appli Office (Word / Excel) ?
Sous Excel par exemple :
Selection.ShapeRange.PictureFormat.CropRight = 72#
Selection.ShapeRange.PictureFormat.CropTop = 123#






Avatar
Christophe CAMPAIN
Salut Raymond,

Petit à petit, j'avance...
Ma fonction pour rogner une image sous access.

@+
Kristof
-------------------
Public Function RecadrageImage(MargeGauche, MargeDroite, MargeHaut, MargeBas
As Long, ImageATraiter As String)
Dim xlAppl As Excel.Application
Dim Image, gr, ExcelSheet As Object

Set xlAppl = CreateObject("Excel.Application")
'xlAppl.Visible = True
'xlAppl.WindowState = xlMaximized

Set ExcelSheet = CreateObject("Excel.Sheet")
' Rend Excel visible au travers de l'objet Application.
'ExcelSheet.Application.Visible = True
ExcelSheet.Activate
' With ActiveWindow
' .DisplayGridlines = False
' .DisplayHeadings = False
' .WindowState = xlMaximized
' End With
Set gr = ActiveSheet.ChartObjects.Add(0, 0, 1024, 768)
gr.Activate
Set Image = ActiveChart.Pictures.Insert(ImageATraiter)
With Image
.ShapeRange.LockAspectRatio = True
.ShapeRange.PictureFormat.CropLeft = Int(MargeGauche) * 0.75
.ShapeRange.PictureFormat.CropRight = Int(MargeDroite) * 0.75
.ShapeRange.PictureFormat.CropTop = Int(MargeHaut) * 0.75
.ShapeRange.PictureFormat.CropBottom = Int(MargeBas) * 0.75
.ShapeRange.Left = -4
.ShapeRange.Top = -4
gr.Width = .ShapeRange.Width - 1
gr.Height = .ShapeRange.Height
With gr.Border
.Weight = 1
.LineStyle = 0
End With
gr.Interior.ColorIndex = xlNone
End With

' Enregistre l'image dans le répertoire de destination
gr.Chart.Export CurrentProject.Path & "Image Tempo Excel .jpg"
RecadrageImage = CurrentProject.Path & "Image Tempo Excel .jpg"
' MsgBox CurrentProject.Path
Image.Delete
Set Image = Nothing
gr.Delete
Set gr = Nothing

' Ferme Excel en appliquant la méthode Quit sur l'objet Application.
ExcelSheet.Application.Quit
' Supprime la variable objet.
Set ExcelSheet = Nothing

End Function


"Raymond [mvp]" a écrit dans le message de
news:%
A ma connaisssance, on ne peut avoir que le size mode (échelle, zoom,
découpage) et la dimension. Le rognage ne fait pas partie d'accès. le
rognage fait plutôt partie des modifs d'images. Mais on n'est jamais sûr.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:
Ok ça marche !!!

Merci pour ton aide précieuse.

Pendant que j'y suis, connais tu une fonction Access Similaire au
"rognage"

des photos avec poignée dans les appli Office (Word / Excel) ?
Sous Excel par exemple :
Selection.ShapeRange.PictureFormat.CropRight = 72#
Selection.ShapeRange.PictureFormat.CropTop = 123#






Avatar
Raymond [mvp]
Bonjour Christophe.

c'est une bonne chose.

dommage qu'on passe pas excel, mais faudra faire avec.
tu es sûr de ton coup , 100% de réussite, pas de bug ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:erXU%
Salut Raymond,

Petit à petit, j'avance...
Ma fonction pour rogner une image sous access.

@+
Kristof


Avatar
Christophe CAMPAIN
Salut Raymond,

Des bugs j'en ai eu à la pelle !!! Mais j'ai fini par résoudre mes problèmes
de "loupe" et ça marche !!!.
J'ai pas mal galléré pour le passage des arguments (Access en Twips , Excel
en Pixels) la conversions Twips/Pixels se fait avec un coef que j'ai
déterminé de manière empirique Twips-->Pixels : coef = 0.0667 ; P-->T : coef
= 15 . Les coefs ne sont pas tout à fait "réversibles" suivant que tu passe
tu Twips au Pixels ou l'inverse.

En ce moment je fais un peu le ménage sur mon fichier, et dés qu'il sera à
peu prés propre, je te l'envois par mail pour que tu jettes un coup d'oeil.
Je pense que ça peu être optimisé et aussi que ça peu interresser du monde.

@+
Kristof




"Raymond [mvp]" a écrit dans le message de
news:
Bonjour Christophe.

c'est une bonne chose.

dommage qu'on passe pas excel, mais faudra faire avec.
tu es sûr de ton coup , 100% de réussite, pas de bug ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:erXU%
Salut Raymond,

Petit à petit, j'avance...
Ma fonction pour rogner une image sous access.

@+
Kristof






Avatar
Raymond [mvp]
tout à fait d'accord

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:uK9D%
Salut Raymond,

Des bugs j'en ai eu à la pelle !!! Mais j'ai fini par résoudre mes
problèmes

de "loupe" et ça marche !!!.
J'ai pas mal galléré pour le passage des arguments (Access en Twips ,
Excel

en Pixels) la conversions Twips/Pixels se fait avec un coef que j'ai
déterminé de manière empirique Twips-->Pixels : coef = 0.0667 ; P-->T :
coef

= 15 . Les coefs ne sont pas tout à fait "réversibles" suivant que tu
passe

tu Twips au Pixels ou l'inverse.

En ce moment je fais un peu le ménage sur mon fichier, et dés qu'il sera à
peu prés propre, je te l'envois par mail pour que tu jettes un coup
d'oeil.

Je pense que ça peu être optimisé et aussi que ça peu interresser du
monde.


@+
Kristof


Avatar
Christophe CAMPAIN
Un truc que j'ai oublié de signaler : Pour que ça marche, il faut que Excel
ne soit PAS ouvert.

@+
Kristof

"Raymond [mvp]" a écrit dans le message de
news:
Bonjour Christophe.

c'est une bonne chose.

dommage qu'on passe pas excel, mais faudra faire avec.
tu es sûr de ton coup , 100% de réussite, pas de bug ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Christophe CAMPAIN" a écrit
dans le message de news:erXU%
Salut Raymond,

Petit à petit, j'avance...
Ma fonction pour rogner une image sous access.

@+
Kristof






Avatar
machin
Bonjour,

Christophe CAMPAIN wrote:
| Un truc que j'ai oublié de signaler : Pour que ça marche, il faut que
| Excel ne soit PAS ouvert.
|
| @+
| Kristof

Dans ce cas, tu peux tenter ceci pour voir :

Set xlAppl = GetObject(, "Excel.Application")
If xlAppl Is Nothing Then: Set xlAppl = CreateObject("Excel.Application")

A+
1 2