logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Excel makro lub formuła do obliczania ile zostało dni do...

karolczyzycki 19 Sty 2010 23:25 7538 10
REKLAMA
  • #1 7561556
    karolczyzycki
    Poziom 20  
    Posty: 581
    Ocena: 43
    Witam.
    Mam taki nietypowy zadanie do zrobienia, chciałbym utworzyć makro, lub napisać formułę która na podstawie dzisiejszego dnia, obliczy ile zostało dni roboczych do końca miesiąca.
    Excel makro lub formuła do obliczania ile zostało dni do...
    Zrobiłem takie pomocnicze tabelki:
    1. nazwa dnia
    2. numer dnia
    3. dni: robocze-"0" wolne-"1"
    4. jeśli zaznaczony dzień = któremuś na liście, wtedy wstaw "1"

    Mam dwateoretycznych rozwiązania tego problemu, ale ani jednego praktycznego:
    Zliczanie "0" (w określonym zakresie) aż do napotkania "1"
    lub
    Formuła licz.jeżeli której zakres zależy od położenia "1"
  • REKLAMA
  • Pomocny post
    #2 7561757
    yogi009
    Poziom 43  
    Posty: 14691
    Pomógł: 848
    Ocena: 2649
    Jak już zrobiłeś taką ładną tabelkę, to pomyśl, czy nie lepiej, zamiast zagnieżdżać wiele razy funkcję jeżeli(), dać sumowanie warunkowe albo liczbę komórek niepustych z zakresu od podanego dnia do końca miesiąca. Jedynym tematem będzie eleganckie podstawienie adresu początku zakresu do funkcji. Osobiście zaznaczyłbym dni robocze jako niepuste (dowolny znak), a wolne jako puste (nie spacje), wtedy funkcja ile.niepustych() działa na takim zakresie niejako standardowo.
  • REKLAMA
  • #3 7561845
    karolczyzycki
    Poziom 20  
    Posty: 581
    Ocena: 43
    Czyli mam coś takiego:
    Excel makro lub formuła do obliczania ile zostało dni do...
    21 liczba dni roboczych w całym miesiącu
    13 liczba dni roboczych, od danego zakresu, do końca.
    Ale to jest przypisane na sztywno, czyli zmieniając dzień zakres zostaje...
    Jak to powiązać?
  • Pomocny post
    #4 7562097
    adamas_nt
    VIP Zasłużony dla elektroda
    Posty: 5320
    Pomógł: 1508
    Ocena: 658
    Można wykorzystać funkcję ADR.POŚR. Np coś w ten deseń
    =SUMA(ADR.POŚR("J"&A4-6):AN7)
    Zakładając, że A4 to komórka, w którą wpisujesz dzień miesiąca.
  • #5 7562680
    kernel-panic
    Poziom 16  
    Posty: 305
    Pomógł: 17
    Ocena: 20
    hmm
    tochyba mu poda ilość dni wolnych nie roboczych
  • REKLAMA
  • Pomocny post
    #6 7562765
    yogi009
    Poziom 43  
    Posty: 14691
    Pomógł: 848
    Ocena: 2649
    No to sobie przetwórz, ale narzędzie już masz
  • Pomocny post
    #7 7564094
    adamas_nt
    VIP Zasłużony dla elektroda
    Posty: 5320
    Pomógł: 1508
    Ocena: 658
    Sorry za zamieszanie. Dane ułożone są w poziomie przecież. Należy uderzyć w inny Np taki deseń
    =SUMA(ADR.POŚR(ADRES(7;A4-7)):AN7)
    Wciąż zakładając, że A4 to komórka z dniem miesiąca.
  • REKLAMA
  • #8 7565563
    karolczyzycki
    Poziom 20  
    Posty: 581
    Ocena: 43
    Nie działa tak jak powinno...
    Nie bardzo rozumiem po co jest to 7 i -7?
    A4 to dzień, np. 13 i formuła liczy ile jest jedynek aż do komórki AN7 ?
    Jeśli a4 = 20 to liczy od numeru 20 aż do AN7 ?
  • Pomocny post
    #9 7566819
    adamas_nt
    VIP Zasłużony dla elektroda
    Posty: 5320
    Pomógł: 1508
    Ocena: 658
    Chodzi o sumę zakresu. Wartość pierwszego argumentu funkcji SUMA określana jest przez funkcję ADR.POŚR gdzie zmienia się Nr kolumny (dane w poziomie) i dlatego użyłem funkcji ADRES.
    Pierwszym argumentem funkcji ADRES jest Nr wiersza, drugim Nr kolumny. Pomniejszyłem go o 7 sugerując się adresem z Twojego rysunku. Dopasuj go do arkusza. Jeśli 13 dzień to kolumna N, to
    bo 13 (wartość z A4) + 1 = 14 czyli kolumna N. Podstawiając wynik ADR.POŚR(ADRES(7;A4+1) gdzie A4=13 do SUMA wyjdzie
  • #10 7566929
    karolczyzycki
    Poziom 20  
    Posty: 581
    Ocena: 43
    Działa super.
    Kiedyś w makro używałem właśnie liczby jako, oznaczeń kolumn, ale teraz zapomniałem że można z tego skorzystać.
    I zastanawiało mnie jak liczyć kolumny, gdyby to były wiersze to byłoby łatwiej, bo są to liczby.
    Dzięki za pomoc.
  • #11 7566976
    yogi009
    Poziom 43  
    Posty: 14691
    Pomógł: 848
    Ocena: 2649
    I taki finał cieszy najbardziej, bo człowiek widzi, że podsunął pomysł, a nie przememłaną papkę jako gotowe rozwiązanie. Gratuluję sukcesu, dociekliwość to podstawa :-)

Podsumowanie tematu

✨ Użytkownik poszukiwał rozwiązania w Excelu, aby obliczyć liczbę dni roboczych do końca miesiąca na podstawie dzisiejszej daty. Zasugerowano wykorzystanie funkcji sumowania warunkowego oraz funkcji ADR.POŚR i ADRES do dynamicznego określenia zakresu dni roboczych. Użytkownik miał problemy z implementacją, ale po wyjaśnieniach dotyczących funkcji, udało mu się uzyskać działające rozwiązanie. Kluczowe było zrozumienie, jak funkcje te mogą współpracować z danymi w poziomie oraz jak dostosować numery kolumn do odpowiednich dni miesiąca.
Wygenerowane przez model językowy.
REKLAMA