Wykres na UserFormie

Nie ma, przynajmniej w standardowym zestawie kontrolek, kontrolki pozwalającej na wyświetlenie wykresu na formularzu użytkownika. Zastęcze rozwiązanie proponuje John Walkenbach na stronie http://j-walk.com/ss/excel/tips/tip66.htm.

Ideą jest zapisanie istniejącego w arkuszu wykresu w postaci gifa i wstawienie go do kontrolki Image.

Zaczynamy od stworzenia tradycyjnego wykresu:

0x01 graphic

Kod:

Sub wykres()
 

    'zapisuje wykres w postaci gif
    Set CurrentChart = Sheets("Sheet1").ChartObjects(1).Chart
    Fname = ThisWorkbook.Path & "\temp.gif"
    CurrentChart.Export Filename:=Fname, FilterName:="GIF"

    'wstawia zapisany gif do kontrolki Image
    UserForm1.Image1.Picture = LoadPicture(Fname)

    'wyświetla formularz
    UserForm1.Show


End Sub
 

Zapisuje wykres w postaci pliku gif i wstawia go do formularza użytkownika (uwaga na nazwę formularza i kontrolki Image!)

0x01 graphic

porównaj dowolnyzakresnauserformie.htm