GRY-Online.pl --> Archiwum Forum

Excel - prośba o pomoc.

07.01.2010
14:57
[1]

Macco™ [ Child Of The Damned ]

Excel - prośba o pomoc.

Mam wielką prośbę a dokładnie o podpowiedzenie co mógłbym zrobić żeby poradzić sobie z dwoma problemami.

W tym pliku jest o wiele więcej kolumn ale zrobiłem tylko screena obrazowego.

1. W pliku excela muszę poprawić czwartą kolumnę. Znajduje się w niej wiek ale w niektórych komórkach jest on ujemny. Ja mam to poprawić ale nie jadąc po kolei przed 500 komórek tylko za pomocą funkcji, formuły etc.
2. Trzecia kolumna to płeć. Załóżmy że 1 to mężczyźni a 2 to kobiety. Mam zrobić osobne tabele z danymi dla kobiet i mężczyzn. Ale też nie jadąc po kolei i wycinając cały wiersz aby następnie wkleić go w osobnym arkuszu przeznaczonym jedynie dla kobiet tylko za pomocą jakiejś funkcji, formuły etc.

Czy ktoś wie jak mógłbym sobie z tym poradzić?
To są dwa polecenia z kilku które mam wykonać na konkretnym pliku. Z reszta dam sobię rade ale przez to nie wiem jak przebrnąć.

07.01.2010
15:20
[2]

legrooch [ MPO Squad Member ]

Co do pierwszego - funkcja ZASTĄP(stary_tekst;liczba_początkowa;liczba_znaków;nowy_tekst)
Co do drugiego to banał - posortuj cały zakres po kolumnie i przenieś pierwszą część do arkusza obok.

07.01.2010
15:38
[3]

Macco™ [ Child Of The Damned ]

Ehh z tego wszystkiego zapomniałem dodać screena.

Co do pierwszego - funkcja ZASTĄP(stary_tekst;liczba_początkowa;liczba_znaków;nowy_tekst)


Tylko że ja nie chce zastępować a za pomocą funkcji, formuły nałożyć tak jakby moduł na wszystkie komórki w tej kolumnie w komórkach które są ujemne ma zniknąć minus.


Excel - prośba o  pomoc. - Macco™
07.01.2010
15:46
[4]

legrooch [ MPO Squad Member ]

Ale zastąp "-" "", w czym masz problem?
Zlikwiduj minus brakiem znaku.

ZASTĄP("-",0,1,"")

W Excelu nie siedzę, ale na chłopski rozum tak to powinno działać.
Po co sprawdzać w każdej i usuwać wtedy pierwszy, skoro można zamienić minus na pusty znak?

07.01.2010
16:05
smile
[5]

Narmo [ nikt ]

No to odwróć odejmowanie :P
=JEŻELI(C2-D2>=0;C2-D2;D2-C2)

07.01.2010
18:05
[6]

Macco™ [ Child Of The Damned ]

legrooch---> Niestety ale zastąpienie znaku nic mi nie daje bo muszę w funkcji określić który znak w komórce ma być zastąpiony spacją. Jeśli określę że ma to być pierwszy znak to w tych komórkach które mają minus zostanie on zastąpiony spacją a w tych w których nie ma minusa pierwsza cyfra zniknie.

07.01.2010
18:18
[7]

Meganelle [ Tarzana przez Tarzana ]

Macco, użyj formuły, która zwraca wartość bezwzględną:
MODUŁ.LICZBY(C2)

07.01.2010
18:27
[8]

Macco™ [ Child Of The Damned ]

Meganelle---> Tylko że ta formuła nie podmieni mi komórek w kolumnie. Nałoży moduł ale zmienione wartości będą w innej kolumnie a ja potrzebuję tak to zrobić żeby nie zmieniać ich położenia a jedynie usunąć znak. Nie wiem czy jest to w ogóle możliwe bez użycia jakiegoś makra.

07.01.2010
18:46
[9]

Meganelle [ Tarzana przez Tarzana ]

Ale przecież możesz użyć formuły:
=MODUŁ.LICZBY(A2-B2)

07.01.2010
18:50
[10]

Narmo [ nikt ]

No ale przecież podałem przykład.

07.01.2010
18:58
[11]

Macco™ [ Child Of The Damned ]

Meganelle ---> Tak ale te wartości będą się znajdowały w nowej kolumnie a nie w tej samej na miejscu starych wartości.

Narmo--> Nie rozumiem jak miała by działać Twoja formuła. Mógłbyś wytłumaczyć?

07.01.2010
19:02
[12]

Narmo [ nikt ]

Najpierw sprawdza, czy różnica liczb w komórkach C2 i D2 jest dodatnia. Jeżeli tak, to odejmuje je w takiej kolejności. Jeżeli nie to w odwrotnej.

Jeżeli masz liczby 2 i 4 to 2-4 = -2 a to jest mniejsze od zera. Więc trzeba zamienić liczby miejscami i mamy 4-2=2.

Składnia

JEŻELI(test_logiczny;wartość_jeżeli_prawda;wartość_jeżeli_fałsz).


07.01.2010
19:09
[13]

Meganelle [ Tarzana przez Tarzana ]

Macco, ale nie rozumiem Twojego problemu - w kolumnie z tym wiekiem (pal licho dziwną konstrukcję, która pozwala na ujemną wartość, ale w końcu to od Ciebie zależy, co tam jest i co oznacza) wpisujesz formułę w pierwszym wierszu, potem zaznaczasz do ostatniego i wciskasz ctrl+D, co ją skopiuje. Jeżeli nie chcesz mieć formuł, to potem tylko kopiujesz i wklejasz jako wartości.
Może czegoś nie rozumiem, ale wydaje mi się, że czwarta kolumna wynika wprost z pierwszych dwóch, więc nie wiem, czemu tak kłopotliwe jest wpisanie formuły w jedną komórkę i skopiowanie jej w dół.

07.01.2010
19:32
[14]

Macco™ [ Child Of The Damned ]

Narmo---> stworzyłem takie warunki -JEŻELI(C3:C8>=0;C3:C8;-C3:C8) ale tak jak w przypadku funkcji modułu nawet jeśli utworze ją w pierwszym wierszu tej kolumny to wartość z pierwszej komórki zostanie utracona na potrzeby utworzenia w niej funkcji. Chyba że ja to źle robię.



pal licho dziwną konstrukcję, która pozwala na ujemną wartość

To jest celowy błąd do poprawienia.

07.01.2010
20:13
[15]

legrooch [ MPO Squad Member ]

Jak chcesz, to z poziomu makra zamień modułem. Przykład:

Dim LResult As String
LResult = Replace("alphabet", "a", "e")

07.01.2010
20:31
[16]

Macco™ [ Child Of The Damned ]

Dzięki za wszelkie odpowiedzi. Na makrach się nie znam bo nigdy się nimi nie bawiłem więc po prostu chyba dam sobie z tym spokój.
Jeszcze raz dzięki.

© 2000-2024 GRY-OnLine S.A.