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.

Excel problem z formułą - Jaka formuła tutaj najlepsza

Gothmag 17 Sty 2017 17:31 423 6
  • #1 17 Sty 2017 17:31
    Gothmag
    Poziom 2  

    Witam,

    Poszukuję osoby która była by mi w stanie pomóc z excelem. Czy jest jakaś formuła która w zależności od ilości sztuk przypisywała by odpowiednią cenę? W załączniku przesyłam przykład o co dokładnie mi chodzi... w zakładce dostawy wpisuję sobie co mi weszło na magazyn a w zakładce sprzedaż co sobie sprzedałem z magazynu i teraz chciałbym dokładnie wiedzieć za jaką cenę kupiłem TOWAR A. Czyli, jak sprzedam już tych rzeczy ponad 300 akurat w przypadku TOWARU A, to pojawi mi się cena inna w tej zakładce sprzedaży. I jak wpiszę nową dostawę to automatycznie już excel będzie wiedział ze trzeba zmienić cenę jak tylko przekroczę ilości wcześniejsze co już miałem na magazynie. W przykładzie mam zrobioną formułę na cenę średnią sprzedanego towaru, lecz do tego co jest mi to potrzebne nie będzie to dobre rozwiązanie. Mam nadzieję, że wiecie o co mi sie rozchodzi...wątpię, że jest na to jakiś sposób ale zapytać się można i może akurat jest taka możliwość :)

    Pozdrawiam i z góry dziękuję za pomoc:)

    Paweł

    0 6
  • Pomocny post
    #2 17 Sty 2017 17:45
    dt1
    Moderator - Komputery Serwis

    Witaj. W przypadku ustalonej ilości dostaw (na aktualnym przykładzie) da się to rozpisać na masę "jeżeli", ale liczba dostaw rośnie, więc rozbudowa o takie funkcje jest bez sensu. Problem na pewno da się rozwiązać za pomocą makro w VBA.

    0
  • #3 17 Sty 2017 17:51
    Gothmag
    Poziom 2  

    VBA niestety nie umiem, lecz jestem osobą kreatywną i jak bym tylko dostał jakieś wskazówki, myślę, ze łatwe makro w VBA bym zrobił :) Czy jestes w stanie napisać mi takie makro przykładowe ? Właśnie funkcję jeżeli już testowałem i musiał bym ręcznie co dostawę poprawiać funkcję a jak już robić to tak żeby w tym nie grzebać:)

    0
  • Pomocny post
    #4 17 Sty 2017 17:53
    dt1
    Moderator - Komputery Serwis

    W sumie jeśli zawsze masz 4 towary i dostawy są co miesiąc (łącznie 12) i poustawiane chronologicznie - to przewidując 12 dostaw na rok można próbować rozpisać na formułach. Ale makro i tak lepsze. Zobaczę, może uda mi się jakieś proste makro Koledze podrzucić.

    0
  • #5 17 Sty 2017 18:10
    Gothmag
    Poziom 2  

    Był bym wdzięczny, To jest przykład towarów będę miał o wiele więcej i dostawy nie będą tak regularne jak w przykładzie....

    0
  • Pomocny post
    #6 17 Sty 2017 20:48
    dt1
    Moderator - Komputery Serwis

    Sprawdź, jak to działa (załącznik). Nie wiem, jakbyś chciał liczyć ceny. Ja założyłem, że:
    - mamy na przykład 3 dostawy po 10 sztuk towarów, pierwsza dostawa ma towar za 1pln, druga ten sam towar za 2pln, trzecia ten sam towar za 3pln, to wtedy:

    - w przypadku, gdy ktoś kupuje po jednej sztuce, pierwsze elementy będą miały liczoną cenę zakupu 1pln, po 10 elemencie będziesz miał 2pln, itd.
    - jeśli ktoś kupi najpierw 8 elementów, to policzony zostanie zakup za 1pln, następnie ktoś kupi 4 elementy (a więc 2 elementy z pierwszej dostawy za 1pln, ale dwa już z kolejnej za 2.pln) to wtedy koszt zakupu dla tych 4 elementów wyjdzie 1,50 za element. Jeśli trafimy tak, że jeden element będzie z pierwszej dostawy, a kolejne trzy z drugiej, to koszt wyjdzie 1,75pln.
    - jeśli ktoś kupi 30 elementów, to również będziesz miał uśrednioną cenę zakupu - czyli dla naszego przykładu wyjdzie 2pln.
    - jeśli przekroczysz stan magazynowy, to makro liczy to co może z dostępnych stanów, a te elementy, których już nie ma na stanie liczy po cenie ostatniej dostawy.
    - dostawy muszą być umieszczane w arkuszu dostaw chronologicznie. Program szuka linijki z nazwą towaru idąc od góry i ściąga jej stan, jak wyzeruje to idzie do następnej i tak dalej. To założenie jest spełnione i tak i w praktyce pewnie też będzie, ale warto o tym wiedzieć.
    - również sprzedaż powinna być dodawana chronologicznie - element niżej w tabeli zlicza, ile sztuk tego samego artykułu zostało sprzedane wyżej (czyli wcześniej) i to zdejmuje sobie ze stanu przed policzeniem, za ile go mogłeś kupować.

    Makro ma chamski przycisk "click me", ale to wcale nie oznacza, że nie możesz go usunąć i uruchamiać go skrótem klawiszowym, jeśli tak zdefiniujesz, albo z menu. Makro przelicza cały arkusz i nadpisuje kolumnę z szacowanymi cenami zakupu za każdym razem.

    Makro może mieć (i pewnie ma) jakieś błędy, bo w sumie jego logika okazała się mimo wszystko dość skomplikowana (chociaż większość pewnie skomplikowałem ja). Zoptymalizowane nie jest wcale, za każdym razem liczy sporo iteracji, ale można je na pewno przyspieszyć (nawet wiem gdzie, ale póki co nie będzie to chyba potrzebne). Makro może obsłużyć do 1000 linijek dotyczących jednego artykułu w arkuszu DOSTAWY.

    Przetestuj na różnych danych, jak Ci się przyda to używaj, jak chcesz to sobie popraw czy dopisz co trzeba :) Makro pisane w Excelu 2003, ale powinno działać z późniejszymi.

    0
  • #7 17 Sty 2017 22:42
    Gothmag
    Poziom 2  

    Dzieki wielkie! Pierwszy raz będę używał VBA, ale po przeczytaniu poradnika wstępnego myślę, że sobie dam radę z ogarnięciem tego:) Dzięki jeszcze ra!

    Dodano po 52 [minuty]:

    A takie pytanie mam, wiem ze dużo żądam, lecz nie mam pomysłu, a jak by wprowadzić żeby to makro automatycznie likwidowało obliczenia już wprowadzone, to czy to by przyśpieszyło liczenie? Obawiam się, że w moim przypadku 1000 sztuk uzbieram bardzo szybko...a jak wprowadziłem przykładowo 1050 transakcję obliczenia trochę trwały.

    Pozdrawiam, Paweł

    0