excel - Image Control - external image Vyřešeno

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

simPod
Level 4
Level 4
Příspěvky: 1295
Registrován: červen 06
Pohlaví: Muž
Stav:
Offline
Kontakt:

excel - Image Control - external image

Příspěvekod simPod » 23 říj 2010 22:25

zdravim

mam excel (:P)
tam vlozenej prvek Image Control
a potreboval bych, aby nacetl obrazek z URL, kterou mu predhodim. je to mozne? diky

Reklama
Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: excel - Image Control - external image

Příspěvekod mike007 » 24 říj 2010 11:57

Zapni si režim návrhu, dvakrát klikni na Image control a tím otevřeš VBA.
Tam zadej toto makro:

Kód: Vybrat vše


Private Sub Image1_Click()
On Error Resume Next
Dim umisteni As String
umisteni = Application.GetSaveAsFilename("C:\", , , "Najdi obrázek nebo zadej cestu")
If umisteni <> "" Then
Image1.Picture = LoadPicture(umisteni)
Image1.PictureSizeMode = fmPictureSizeModeStretch
End If
On Error GoTo 0
End Sub



VBA zavři. Jestli chceš, aby se prvek vždy roztáhl do velikosti obrázku, v nastavení si dej Autosize-True. Poté nezapomeň vypnout režim návrhu. Nyní pokaždé když klikneš na ten ovládací prvek, otevře se ti okno abys vybral obrázek z počítače. Můžeš tam zadat i URL obrázku ...

Ukázka v příloze. Jestli máš na mysli něco jiného, tak by bylo vhodné se trošku víc rozepsat...
Přílohy
pc-help-image-loc.xls
(952 KiB) Staženo 245 x
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.

simPod
Level 4
Level 4
Příspěvky: 1295
Registrován: červen 06
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: excel - Image Control - external image

Příspěvekod simPod » 24 říj 2010 15:12

mno, cca je to uz ono. jen bych chtel, ze tomu pres promenou predam URL, treba obsah nejake bunky ve ktere je URL obrazku (ktery je online) napsana a obrazek se tam nacte

zkousel jsem v tvem prikladu nastavit promennou umisteni na:
umisteni = "http://pc-help.cz/styles/prosilver/theme/images/google.jpg"
ale to nefunguje

Uživatelský avatar
X
Elite Level 12.5
Elite Level 12.5
Příspěvky: 19360
Registrován: květen 07
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: excel - Image Control - external image

Příspěvekod X » 24 říj 2010 15:27

mike007: Paráda. U této věci jsem si říkal, že to asi nepůjde, teda že by šel vložit odkaz, ale že se nezobrazí automaticky obrázek. Klobouk dolů :smile:

simPod: Tam už to chce jen doštělovat správný formát odkazu a mrknout i do nápovědy ... například pro soubory na disku se pro odkazování používají i: [] a v některých odkazech i: /// (možná: \\\), na Net jsou v nápovědě také příklady, jen si s tím pohrát a vyzkoušet ...

P.S.: tohle později také využiji, díky.

Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: excel - Image Control - external image  Vyřešeno

Příspěvekod mike007 » 24 říj 2010 21:10

Na import externích obrázků to chce silnější kalibr :wink:

Kód: Vybrat vše

Option Explicit

Private Type TGUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(0 To 7) As Byte
End Type

Private Declare Function OleLoadPicturePath Lib "oleaut32" (ByVal szURLorPath As Long, ByVal punkCaller As Long, ByVal dwReserved As Long, ByVal clrReserved As OLE_COLOR, ByRef riid As TGUID, ByRef ppvRet As IPicture) As Long

Public Function LoadPicture(ByVal strFileName As String) As IPicture
Dim IID As TGUID
With IID
.Data1 = &H7BF80980
.Data2 = &HBF32
.Data3 = &H101A
.Data4(0) = &H8B
.Data4(1) = &HBB
.Data4(2) = &H0
.Data4(3) = &HAA
.Data4(4) = &H0
.Data4(5) = &H30
.Data4(6) = &HC
.Data4(7) = &HAB
End With
On Error GoTo ERR_LINE
Set LoadPicture = stdole.LoadPicture(strFileName)
Exit Function
ERR_LINE:
On Error Resume Next
OleLoadPicturePath StrPtr(strFileName), 0&, 0&, 0&, IID, LoadPicture
If LoadPicture Is Nothing Then
MsgBox "Nemohu najít " & strFileName
End
End If
End Function


Private Sub Image1_Click()
On Error Resume Next
Set Me.Image1.Picture = LoadPicture(Range("a1"))
On Error GoTo 0
End Sub


V příloze máš ukázku. URL obrázku kopíruj do buňky A1. Vždy uváděj plnou cestu, tzn. i s "http://"
Přílohy
pc-help-image-loc.xls
(610 KiB) Staženo 204 x
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.

simPod
Level 4
Level 4
Příspěvky: 1295
Registrován: červen 06
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: excel - Image Control - external image

Příspěvekod simPod » 24 říj 2010 21:24

jop, to funguje
jen mi vyhodilo hlasku, ze to neni kompatibilni se 64-bit systemem, tak jsem upravil jeden radek a tvari se, ze to funguje:

Kód: Vybrat vše

Private Declare PtrSafe Function OleLoadPicturePath Lib "oleaut32" (ByVal szURLorPath As LongPtr, ByVal punkCaller As LongPtr, ByVal dwReserved As LongPtr, ByVal clrReserved As OLE_COLOR, ByRef riid As TGUID, ByRef ppvRet As IPicture) As LongPtr


diky

Uživatelský avatar
mike007
Master Level 7.5
Master Level 7.5
Příspěvky: 5860
Registrován: srpen 07
Bydliště: Pardubice
Pohlaví: Muž
Stav:
Offline
Kontakt:

Re: excel - Image Control - external image

Příspěvekod mike007 » 24 říj 2010 21:32

Jestli je to ok, označ vlákno za vyřešené, ať to nestraší v TOPx
Nejlepší hra je Excel!
Pravidla fóra PC-helpJak označit téma za vyřešené
»»»»»»»»»»»»»»»»»»»»»»»
UPOZORNĚNÍ - můj Skype, Soukromé zprávy či email neslouží jako tech. podpora.
Dotazy pište do fóra. Od toho tu je.


  • Mohlo by vás zajímat
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • EXCEL -jak otevřít 2 excel sobory abych je viděla současne a samostatně
    od Ketty02 » 30 srp 2024 21:19 » v Vše ostatní (sw)
    2
    4774
    od Riviera kid Zobrazit poslední příspěvek
    02 zář 2024 16:21
  • Přechod z Excel 21 na Excel 24
    od Snekment » 29 led 2025 13:46 » v Kancelářské balíky
    2
    12191
    od Snekment Zobrazit poslední příspěvek
    29 led 2025 15:05
  • Pohoda a excel Příloha(y)
    od brownwld » 06 kvě 2025 17:28 » v Kancelářské balíky
    1
    4613
    od atari Zobrazit poslední příspěvek
    07 kvě 2025 09:41
  • Excel - výpočet nočních hodin Příloha(y)
    od Uziv00 » 17 říj 2024 11:22 » v Kancelářské balíky
    3
    3317
    od lubo. Zobrazit poslední příspěvek
    24 říj 2024 00:00
  • Tisk sloupců vedle sebe na A4 - Excel
    od atari » 24 dub 2025 10:51 » v Kancelářské balíky
    5
    3908
    od atari Zobrazit poslední příspěvek
    26 dub 2025 09:11

Zpět na “Kancelářské balíky”

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 13 hostů