Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour
l'ajuster à la taille du champ image si elle est trop grande, et l'aficher
en taille réelle si elle est plus petite que le champ image.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Michel Pierron
Bonsoir Laurent; Dis nous d'abord quel type d'image (gif ou jpeg ou autre...) Sinon, tu peux jouer avec la propriété PictureSizeMode du contrôle Image pour ajuster l'image au contrôle. MP
"Laurent GOSSET" a écrit dans le message de news:41eaa50a$0$31525$
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour l'ajuster à la taille du champ image si elle est trop grande, et l'aficher en taille réelle si elle est plus petite que le champ image.
Merci d'avance
Bonsoir Laurent;
Dis nous d'abord quel type d'image (gif ou jpeg ou autre...)
Sinon, tu peux jouer avec la propriété PictureSizeMode du contrôle Image
pour ajuster l'image au contrôle.
MP
"Laurent GOSSET" <laurentgosset@free.fr> a écrit dans le message de
news:41eaa50a$0$31525$626a14ce@news.free.fr...
Pour afficher une image ( sélectionnée dans un dossier du disque dur )
dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour
l'ajuster à la taille du champ image si elle est trop grande, et l'aficher
en taille réelle si elle est plus petite que le champ image.
Bonsoir Laurent; Dis nous d'abord quel type d'image (gif ou jpeg ou autre...) Sinon, tu peux jouer avec la propriété PictureSizeMode du contrôle Image pour ajuster l'image au contrôle. MP
"Laurent GOSSET" a écrit dans le message de news:41eaa50a$0$31525$
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour l'ajuster à la taille du champ image si elle est trop grande, et l'aficher en taille réelle si elle est plus petite que le champ image.
Merci d'avance
michelxld
bonsoir Laurent , bonsoir Michel
tu peux tester cette macro pour obtenir les dimensions d'une image
Sub dimensionsImage() 'testé avec Excel2002 & WinXP 'necessite d'activer reference Microsoft Shell Controls and Automation Dim objShell As Shell Dim objFolder As Folder Dim strFileName As FolderItem Dim Fichier As String, Cible As String Dim Rep As Integer
Fichier = Application.GetOpenFilename
Rep = 1 Do Until Rep = 0 Cible = Rep: Rep = InStr(Rep + 1, Fichier, "") Loop
Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.NameSpace(Left(Fichier, Cible - 1)) Set strFileName = objFolder.Items.Item(Right(Fichier, Len(Fichier) - Cible))
MsgBox objFolder.GetDetailsOf(strFileName, 26)
End Sub
bonne soiree michel
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour l'ajuster à la taille du champ image si elle est trop grande, et l'aficher en taille réelle si elle est plus petite que le champ image.
bonsoir Laurent , bonsoir Michel
tu peux tester cette macro pour obtenir les dimensions d'une image
Sub dimensionsImage()
'testé avec Excel2002 & WinXP
'necessite d'activer reference Microsoft Shell Controls and Automation
Dim objShell As Shell
Dim objFolder As Folder
Dim strFileName As FolderItem
Dim Fichier As String, Cible As String
Dim Rep As Integer
Fichier = Application.GetOpenFilename
Rep = 1
Do Until Rep = 0
Cible = Rep: Rep = InStr(Rep + 1, Fichier, "")
Loop
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.NameSpace(Left(Fichier, Cible - 1))
Set strFileName = objFolder.Items.Item(Right(Fichier, Len(Fichier) - Cible))
MsgBox objFolder.GetDetailsOf(strFileName, 26)
End Sub
bonne soiree
michel
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour
l'ajuster à la taille du champ image si elle est trop grande, et l'aficher
en taille réelle si elle est plus petite que le champ image.
tu peux tester cette macro pour obtenir les dimensions d'une image
Sub dimensionsImage() 'testé avec Excel2002 & WinXP 'necessite d'activer reference Microsoft Shell Controls and Automation Dim objShell As Shell Dim objFolder As Folder Dim strFileName As FolderItem Dim Fichier As String, Cible As String Dim Rep As Integer
Fichier = Application.GetOpenFilename
Rep = 1 Do Until Rep = 0 Cible = Rep: Rep = InStr(Rep + 1, Fichier, "") Loop
Set objShell = CreateObject("Shell.Application") Set objFolder = objShell.NameSpace(Left(Fichier, Cible - 1)) Set strFileName = objFolder.Items.Item(Right(Fichier, Len(Fichier) - Cible))
MsgBox objFolder.GetDetailsOf(strFileName, 26)
End Sub
bonne soiree michel
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour l'ajuster à la taille du champ image si elle est trop grande, et l'aficher en taille réelle si elle est plus petite que le champ image.
Michel Pierron
Re Laurent; Si tu as xp:
Sub Test() MsgBox GetProperties("c:windowsclock.avi"), 64 End Sub
Private Function GetProperties(ByVal FullPathFile$) As String If Dir(FullPathFile) = "" Then Exit Function Dim PathFile$, FileName$, i%, Info$ Dim oFolder As Object, oItem As Object i = lPos(FullPathFile, "") PathFile = Left$(FullPathFile, i - 1) FileName = Mid$(FullPathFile, i + 1) Set oFolder = CreateObject("Shell.Application") _ .NameSpace(CStr(PathFile)) If oFolder Is Nothing Then Exit Function With oFolder Set oItem = .ParseName(CStr(FileName)) If oItem Is Nothing Then GoTo 1 For i = 0 To 34 If Len(.GetDetailsOf(oItem, i)) Then GetProperties = GetProperties & .GetDetailsOf(oFolder, i) & ": " GetProperties = GetProperties & .GetDetailsOf(oItem, i) & vbLf End If Next End With 1: Set oItem = Nothing: Set oFolder = Nothing End Function
Private Function lPos%(Chain$, Char$) Dim iPos As Integer Do iPos = InStr(lPos + 1, Chain, Char, 1) If iPos Then lPos = iPos Else Exit Do Loop End Function
MP
"Laurent GOSSET" a écrit dans le message de news:41eaa50a$0$31525$
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour l'ajuster à la taille du champ image si elle est trop grande, et l'aficher en taille réelle si elle est plus petite que le champ image.
Merci d'avance
Re Laurent;
Si tu as xp:
Sub Test()
MsgBox GetProperties("c:windowsclock.avi"), 64
End Sub
Private Function GetProperties(ByVal FullPathFile$) As String
If Dir(FullPathFile) = "" Then Exit Function
Dim PathFile$, FileName$, i%, Info$
Dim oFolder As Object, oItem As Object
i = lPos(FullPathFile, "")
PathFile = Left$(FullPathFile, i - 1)
FileName = Mid$(FullPathFile, i + 1)
Set oFolder = CreateObject("Shell.Application") _
.NameSpace(CStr(PathFile))
If oFolder Is Nothing Then Exit Function
With oFolder
Set oItem = .ParseName(CStr(FileName))
If oItem Is Nothing Then GoTo 1
For i = 0 To 34
If Len(.GetDetailsOf(oItem, i)) Then
GetProperties = GetProperties & .GetDetailsOf(oFolder, i) & ": "
GetProperties = GetProperties & .GetDetailsOf(oItem, i) & vbLf
End If
Next
End With
1: Set oItem = Nothing: Set oFolder = Nothing
End Function
Private Function lPos%(Chain$, Char$)
Dim iPos As Integer
Do
iPos = InStr(lPos + 1, Chain, Char, 1)
If iPos Then lPos = iPos Else Exit Do
Loop
End Function
MP
"Laurent GOSSET" <laurentgosset@free.fr> a écrit dans le message de
news:41eaa50a$0$31525$626a14ce@news.free.fr...
Pour afficher une image ( sélectionnée dans un dossier du disque dur )
dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour
l'ajuster à la taille du champ image si elle est trop grande, et l'aficher
en taille réelle si elle est plus petite que le champ image.
Sub Test() MsgBox GetProperties("c:windowsclock.avi"), 64 End Sub
Private Function GetProperties(ByVal FullPathFile$) As String If Dir(FullPathFile) = "" Then Exit Function Dim PathFile$, FileName$, i%, Info$ Dim oFolder As Object, oItem As Object i = lPos(FullPathFile, "") PathFile = Left$(FullPathFile, i - 1) FileName = Mid$(FullPathFile, i + 1) Set oFolder = CreateObject("Shell.Application") _ .NameSpace(CStr(PathFile)) If oFolder Is Nothing Then Exit Function With oFolder Set oItem = .ParseName(CStr(FileName)) If oItem Is Nothing Then GoTo 1 For i = 0 To 34 If Len(.GetDetailsOf(oItem, i)) Then GetProperties = GetProperties & .GetDetailsOf(oFolder, i) & ": " GetProperties = GetProperties & .GetDetailsOf(oItem, i) & vbLf End If Next End With 1: Set oItem = Nothing: Set oFolder = Nothing End Function
Private Function lPos%(Chain$, Char$) Dim iPos As Integer Do iPos = InStr(lPos + 1, Chain, Char, 1) If iPos Then lPos = iPos Else Exit Do Loop End Function
MP
"Laurent GOSSET" a écrit dans le message de news:41eaa50a$0$31525$
Pour afficher une image ( sélectionnée dans un dossier du disque dur ) dans
un Userform, je souhaite connaitre sa taille ( largeur, hauteur) pour l'ajuster à la taille du champ image si elle est trop grande, et l'aficher en taille réelle si elle est plus petite que le champ image.