Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

VBA - Automatyczny wykres zależności

BlooQ 23 Sie 2015 13:23 906 7
  • #1 23 Sie 2015 13:23
    BlooQ
    Poziom 7  

    Hej mam pytanie czy jest to możliwe ?
    Komórka G9 zmienia się od wartości komórki B12 (zakres komórki B12 1-4) ale na wynik G9 wpływa masa zależności których nie można zmienić.
    Teraz chciałbym utworzyć wykres zależności tych dwóch komórek ale tak by aktualizowały się automatycznie – przykład w załączniku.
    Czy jest to możliwe ?

    0 7
  • #2 04 Wrz 2015 09:28
    Maciej Gonet
    Poziom 31  

    Dzień dobry,
    Problem jest opisany bardzo niejasno. W przykładowym pliku nie ma żadnego wykresu. Nie wiadomo jak miałby on wyglądać. Piszesz "wykres zależności tych dwóch komórek", ale od czego? Wykres to zawsze zależność jednej grupy danych od innej grupy danych. A tu są tylko ich pojedyncze wartości. Więc co miałoby być na wykresie? Historia zmian?
    Generalnie wykresy w Excelu aktualizują się automatycznie po zmianie danych i nie potrzeba do tego żadnego kodu.
    Jeśli nadal oczekujesz pomocy w tym temacie opisz precyzyjnie, co chcesz osiągnąć i pokaż jak miałby wyglądać ten wykres (istnieją przeróżne rodzaje wykresów).
    Pozdrowienia

    0
  • #3 22 Wrz 2015 08:39
    BlooQ
    Poziom 7  

    Ok.
    Postaram się wyjaśnić.
    W komórce B12 będę wpisywał dane od 1 do 15. W zależności co wpiszę zmieni mi się wartość komórki G9. I problem jest taki żeby wyciągnąć automatycznie dane do wykresu. Gdy
    B12=1 to G9 = 110
    B12=2 to G9 = 120
    B12=3 to G9 = 130
    B12=4 to G9 = 140 I tak dalej
    Myślałem o takiej funkcji że jeżeli K3 =B12 to L3 = G9 jeżeli nie to podaj wyświetlaną wartość poprzednią czyli 110. W ten sposób wpisując rosnąco od 1 do 15 wartości do B12 kolumna L wypełniała by się odpowiednimi danymi.

    0
  • #4 22 Wrz 2015 11:58
    Maciej Gonet
    Poziom 31  

    Dzień dobry,
    To jest jakaś prosta sprawa, tylko opisana tak zawile, że trudno się zorientować, o co naprawdę chodzi. Jeśli ma być wykres, to na podstawie jakich danych - widzę jako zakres danych do wykresu obszar K3:L6. To ma być cały zakres danych do wykresu? Następne pytanie - czy wykres ma być statyczny, czy dynamiczny - to znaczy, czy po wykonaniu wykresu dane mają się zmieniać?
    Nie rozumiem, po co te komplikacje z odwołaniami między komórkami?
    Z ostatniego postu wynika, że pomiędzy G9 a B12 jest prosta zależność liniowa:

    Kod: text
    Zaloguj się, aby zobaczyć kod

    To dlaczego nie wykorzystać tej formuły wprost do danych wykresu?
    Potem takie zdanie:
    Cytat:
    Myślałem o takiej funkcji że jeżeli K3 =B12 to L3 = G9 jeżeli nie to podaj wyświetlaną wartość poprzednią czyli 110.

    Co to znaczy wartość poprzednią? Względem czego?
    Najlepiej jakbyś po prostu narysował jak ten wykres ma przykładowo wyglądać, bo trudno będzie chyba się dogadać.
    Pozdrowienia

    0
  • #5 22 Wrz 2015 13:58
    BlooQ
    Poziom 7  

    Hej
    Dziękuję za zainteresowanie tematem. Niestety to chyba nie jest sprawa prosta. Postaram się jeszcze bardziej opisać problem. Generalnie sam wykres nie stanowi wyzwania. Chodzi o to że w B12 będą wpisywane liczby od 1 do 15 co 1. Jeżeli wpisze 1 to w G9 pojawi się jakaś wartość jeżeli 2 inna i tak do 15 i chodzi o to żeby te wartości z komórki G9 „wyrzucić” do osobnej tabeli odpowiednio dla 1,2,3… Może tak: Jak bym chciał ręcznie to zrobić to w kolumnie K uzupełnił bym wiersze ręcznie od 1 do 15 co jeden, w B12 wpisał bym jeden i wartość z G9 wpisał bym w L1. Potem w B12 wpisał bym 2 i wartość z G9 wpisał bym w L2 i tak do 15. Potem utworzył bym sobie wykres zależności liczb 1-15 i odpowiednich wartości. Ale chce żeby z automatu się to zrobiło. Niestety arkusz ( ten prawdziwy, w załączniku jest mocno uproszczona jego wersja) jest tak napisany że na wynik z G9 wchodzi masa zależności i formuł które są między innymi sterowane przez zmienną B12. Opisując to zagadnienie to np.: B12 to ilość stopni w schodach a G9 to koszt schodów. W zależności ile jest stopni dodaje się odejmuje materiał, komponenty czy prace które wpływają na koszt ostateczny. A zadaniem końcowym jest pokazanie klientowi jak zmienia się całkowity koszt od ilości stopni. Mam nadzieję że troszkę jest już to bardziej czytelne :P

    0
  • Pomocny post
    #6 22 Wrz 2015 15:19
    Maciej Gonet
    Poziom 31  

    W dalszym ciągu nie jest do końca czytelne, bo nie widzę jeszcze powodu, by nie można było zastosować zwykłego kopiowania. Ale zakładając, że droga od danej do wyniku jest wieloetapowa i nie da się jej zapisać w jednej linijce arkusza, to istnieje jeszcze procedura, zwana Tabela danych, która działa właśnie w ten sposób, że podstawia kolejne wartości do wzoru i wyniki obliczeń tablicuje. Procedura ta jest dostępna w Excelu 2010 przez Dane/Narzędzia danych/Analiza warunkowa/Tabela danych (we wcześniejszych wersjach Excela też jest dostępna, tylko sekwencja może być trochę inna). W przypadku funkcji jednej zmiennej wpisujemy w lewej górnej komórce tabeli dowolną (wzorcową) wartość x (zmiennej niezależnej) i dokładnie tę komórkę używamy do obliczeń. Potem uzyskujemy gdzieś wynik i odwołanie do tego wyniku (ewentualnie ostatni etap obliczeń) umieszczamy obok po prawej stronie wzorcowego x. Pod wzorcowym x umieszczamy listę wartości, które mają być podstawione pod x. Zaznaczamy zakres obejmujący wzorcowe x, wszystkie robocze x, wynik wzorcowy i miejsca na wyniki robocze. Uruchamiamy procedurę Tabela danych i jeśli układ danych jest pionowy wypełniamy pole Kolumnowa komórka wejściowa, wpisując tam adres wzorcowego x (można też kliknąć komórkę). Drugie pole (wierszowa komórka wejściowa) pozostaje puste. OK i tabelka wypełniona wynikami.
    Ale ta procedura jest potrzebna, gdy proces obliczeniowy nie da się zapisać w jednej linijce, a zazwyczaj się da i wtedy wystarczy zwykłe kopiowanie formuł.
    Przykład użycia tej procedury w załączniku.

    0
  • #7 24 Wrz 2015 08:01
    BlooQ
    Poziom 7  

    Hej to może być i to. Przetestuje i dam znać.

    0
  • #8 01 Paź 2015 11:24
    BlooQ
    Poziom 7  

    Przepraszam że tak późno ale działa.
    Dziękuje za pomoc.

    0