Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Excel - Excel. Jak policzyć liczby w kolumnie?

kleofas1234 08 Nov 2013 10:57 3738 12
  • #1
    kleofas1234
    Level 10  
    Witam.
    Z programu zewnętrznego otrzymuję min. kolumnę w której umieszczone są liczby (nieraz po kilka w jednej komórce). Poszczególne komórki mogą zawierać tekst lub są puste.
    Prośba. Jak policzyć ile jest liczb w tej kolumnie?
    Chcę policzyć tylko liczby sześciocyfrowe.

    556637,
    657835, 685433,
    czerwony, 338578,
    779900, 993322, 334455,
    0,

    Fragment danych w załączniku.
  • Helpful post
    #2
    adamas_nt
    Moderator of Programming
    W załączonym arkuszu sprawa jest prosta (same liczby). Liczysz zajęte wiersze + przecinki.
    W treści natomiast, dopuszczasz tekst i tu jest już mniej prosta. Musiałbyś rozbić ciąg, sprawdzać czy fragmenty są liczbą i warunkowo dodawać do sumy... Przy ilości przecinków >3, bez VBA, robi się dość skomplikowana.
  • #3
    tadkli9743
    Level 24  
    Witaj wykorzystaj funkcję =LICZ.JEŻELI(F2:F20;">100000")
    Pozdrawiam
  • #4
    kleofas1234
    Level 10  
    adamas_nt wrote:
    W załączonym arkuszu sprawa jest prosta (same liczby). Liczysz zajęte wiersze + przecinki.
    W treści natomiast, dopuszczasz tekst i tu jest już mniej prosta. Musiałbyś rozbić ciąg, sprawdzać czy fragmenty są liczbą i warunkowo dodawać do sumy... Przy ilości przecinków >3, bez VBA, robi się dość skomplikowana.


    Dzięki. Tekst występuje tylko w 1 wierszu.
  • #5
    tadkli9743
    Level 24  
    Witaj podałem dla przykładu formułę =LICZ.JEŻELI(F2:F20;">100000") F2:F20 to ma być Twój zakres sprawdzania ale parametr ">100000" 100000 oznacza, że sprawdza liczby 6-cio cyfrowe i większe.
    Pozdrawiam
  • #6
    kleofas1234
    Level 10  
    tadkli9743 wrote:
    Witaj podałem dla przykładu formułę =LICZ.JEŻELI(F2:F20;">100000") F2:F20 to ma być Twój zakres sprawdzania ale parametr ">100000" 100000 oznacza, że sprawdza liczby 6-cio cyfrowe i większe.
    Pozdrawiam


    Niestety te dane mają format tekstowy i nie rozpoznaje liczb.

    Jeszcze jedno. Jak policzyć przecinki. Funkcja LICZ.JEŻELI(A:A;",") nie zlicza.
  • Helpful post
    #8
    adamas_nt
    Moderator of Programming
    :arrow: tadkli9743 Zaglądałeś w ogóle do arkusza? A u mnie bez kolumn pomocniczych (lub VBA) ani rusz :(

    dane z postu #1
    Excel - Excel. Jak policzyć liczby w kolumnie?
    W G1: =LICZ.JEŻELI(B1:E5;PRAWDA)

    Edit: Aj! Miały być tylko 6-cio cyfrowe
    Excel - Excel. Jak policzyć liczby w kolumnie?

    Teraz warunek mam ">99999". Ale, jeśli dwa warunki ORAZ(bardzo_długa_formuła > 99999; bardzo_długa_formuła < 1000000) plus te szpecące kolumny pomocnicze, to lepiej chyba napisać makro...
  • #9
    tadkli9743
    Level 24  
    adamas_nt przeczytaj mój post z 12:19 napisałem w nim, że nie mogę otworzyć pliku rar i prosiłem plik w xls
  • Helpful post
    #10
    adamas_nt
    Moderator of Programming
    tadkli9743 wrote:
    nie mogę otworzyć pliku rar i prosiłem plik w xls
    Hmm, "zainwestuj" w 7-zip'a :D

    Się autor ucieszy...
  • #11
    kleofas1234
    Level 10  
    adamas_nt wrote:
    :arrow: tadkli9743 Zaglądałeś w ogóle do arkusza? A u mnie bez kolumn pomocniczych (lub VBA) ani rusz :(

    dane z postu #1
    Excel - Excel. Jak policzyć liczby w kolumnie?
    W G1: =LICZ.JEŻELI(B1:E5;PRAWDA)

    Edit: Aj! Miały być tylko 6-cio cyfrowe
    Excel - Excel. Jak policzyć liczby w kolumnie?

    Teraz warunek mam ">99999". Ale, jeśli dwa warunki ORAZ(bardzo_długa_formuła > 99999; bardzo_długa_formuła < 1000000) plus te szpecące kolumny pomocnicze, to lepiej chyba napisać makro...


    Wielkie dzięki.
    Sprawa się nieco uprościła. W prosty sposób mogę skopiować tylko dane z liczbami i wszystkie są sześciocyfrowe (czyli te które chcę policzyć). Trochę "na piechotę" ale zrobiłem tak:
    kolumny pomocnicze:
    1 =USUŃ.ZBĘDNE.ODSTĘPY(A2)&","
    2. =DŁ(B2)-DŁ(PODSTAW(B2;",";""))
    3. =C2-1
    4. =ILE.NIEPUSTYCH(A:A)+SUMA(D:D) daje wynik.

    Jutro sprawdzę na większej liczbie danych ale wydaje się że działa. Jeśli nie to skorzystam z Twojego (jeśli nie masz nic przeciwko).

    Ps. Nie mogę dodać pliku Excel a rar przechodzi.
  • Helpful post
    #12
    Maciej Gonet
    VBA, Excel specialist
    Dzień dobry,
    Jeśli można się włączyć do dyskusji, jeśli dane są takie jak w ostatnim przykładzie, to wydaje mi się, że dodawanie przecinków jest zbędne i cała procedura może się obejść bez kolumn pomocniczych. Funkcja USUŃ.ZBĘDNE.ODSTĘPY potrzebna jeśli mogą się gdzieś pojawić dodatkowe spacje. Formuła końcowa byłaby formułą tablicową (Ctrl+Shift+Enter). W przykładzie zostawiłem odwołanie do całej kolumny, ale lepiej ograniczyć się do faktycznie używanego zakresu (Excel będzie szybciej reagował na dodatkowe wpisy).
    Kolumny pomocnicze tylko jako ilustracja.
  • #13
    kleofas1234
    Level 10  
    Maciej Gonet wrote:
    Dzień dobry,......
    Kolumny pomocnicze tylko jako ilustracja.


    Wielkie dzięki.
    Teraz mam wszystko w jednej komórce. :)