860lacov Opublikowano 19 Maja 2007 Zgłoś Opublikowano 19 Maja 2007 Czy da się w excel'u ustawić tak żeby liczby były zaokrąglane w ten sposób, że np. 4.45 będzie zaokrąglany do 4.4 4.451 będzie zaokrąglany do 4.5 4.35 będzie zaokrąglany do 4.4 czyli w przypadku kiedy na końcu jest tylko 5 to program zaokrągli poprzednią do parzystej, a kiedy będzie 5 i coś jeszcze to zaokrągli w górę. Chcę sobie zrobić taką mini tablicę do liczenia pewnego rodzaju zadania w z geodezji, ale niestety program nie może wykorzystywać 15 znaków po kropce dziesiętnej a jedynie 3. Normalnie excel zawsze zaokrągla od 5 w górę, a ja przy parzystych muszę mieć w dół. Może to być też dowolny inny program aby tylko miał możliwość zrobienia czegoś takiego, że np obliczę sobie 2+2=4 i to równanie będzie miało oznaczenie np #1 A w następnym zrobię #1 + 2 i program policzy, że jest to 6 Mam nadzieję, że w miarę jasno napisałem o co mi chodzi. p.s. Wydaje mi się, że w excelu można użyć kilku jak nie więcej formuł jeżeli, ale to będzie chyba małe przegięcie Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
kfgz Opublikowano 19 Maja 2007 Zgłoś Opublikowano 19 Maja 2007 (edytowane) Może to być też dowolny inny program aby tylko miał możliwość zrobienia czegoś takiego, że np obliczę sobie 2+2=4 i to równanie będzie miało oznaczenie np #1 A w następnym zrobię #1 + 2 i program policzy, że jest to 6 Derive chociażby. Wydaje mi się, że w excelu można użyć kilku jak nie więcej formuł jeżeli, ale to będzie chyba małe przegięciePoszukaj informacji o pisaniu makr w Visual Basicu po Excela. Edytowane 19 Maja 2007 przez Dj_AnT Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
860lacov Opublikowano 19 Maja 2007 Zgłoś Opublikowano 19 Maja 2007 Czy w derive jest taka opcja/funkcja czy trzeba ją jakoś "zaprogramować"? Moje umiejętności programistyczne niestety nie są na zbyt wysokim poziomie czyt. w zasadzie na 0 Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
kfgz Opublikowano 20 Maja 2007 Zgłoś Opublikowano 20 Maja 2007 Czy w derive jest taka opcja/funkcja czy trzeba ją jakoś "zaprogramować"?Z tego co się orientuję to nie ma. Postaram się jutro napisać proste makro w VB pod excela. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
Linoge Opublikowano 20 Maja 2007 Zgłoś Opublikowano 20 Maja 2007 (edytowane) Kilka formul w excellu i po sprawie ;] Edytowane 20 Maja 2007 przez Linoge Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
860lacov Opublikowano 20 Maja 2007 Zgłoś Opublikowano 20 Maja 2007 @Linoge Jak chcesz to zrobić formułami? Ja nad tym myślałem i wyszło mi, że tych formuł musiałoby być na prawdę sporo, ale jeśli wiesz jak to zrobić szybko to ja bardzo chętnie się dowiem Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
kfgz Opublikowano 21 Maja 2007 Zgłoś Opublikowano 21 Maja 2007 (edytowane) Zgodnie z obietnicą: Function rm (x as single) as singleDIM t1 AS INTEGERDIM t23 AS INTEGERt23 = (x * 10 - INT(x * 10)) * 100t1 = INT(x * 10) - 10 * INT(x)IF t23 > 50 THEN t1 = t1 + 1 ELSE IF t23 = 50 AND t1 MOD 2 = 1 THEN t1 = t1 + 1x = INT(x) + t1 / 10rm = xEnd Function To jest funkcja użytkownika. Używasz jej np tak: =rm(4,35) Arkusz OO i M$: http://www.sendspace.com/file/e9576i Edytowane 21 Maja 2007 przez Dj_AnT Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
860lacov Opublikowano 21 Maja 2007 Zgłoś Opublikowano 21 Maja 2007 prawie :) kiedy chcę zaokrąglić 3.45000000000001 to zaokrągla mi się do 3.400001 W tym przypadku nie byłoby problemu, ale w innym kto wie :) Problem może być jeszcze w tym, że liczby w danym zadaniu będą zaokrąglane do 3 znaków po kropce dziesiętnej, a to makro zaokrągla do 1 miejsca :) Chyba zacznę się troszkę interesować tym tematem :) albo może wogóle jakimś językiem programowania. p.s. Nasz profesor powiedział nam, że napisanie programu do obliczania tego typu zadań przynosi niezłe zyski. Oczywiście w takim programie zaokrąglanie nie ma znaczenia bo dla komputera to bez różnicy. Ja niestety licząc na kalkulatorze muszę robić tak, żeby uzyskać wymaganą dokładność przy minimalnej (co nie znaczy, że jest tego mało) ilości pracy. Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
kfgz Opublikowano 21 Maja 2007 Zgłoś Opublikowano 21 Maja 2007 Jest godzina 1:11 :) powinno być git: http://mowa.home.pl/kfgz/ms.zip Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
interceptor666 Opublikowano 6 Lutego 2008 Zgłoś Opublikowano 6 Lutego 2008 Jest godzina 1:11 :) powinno być git: http://mowa.home.pl/kfgz/ms.zip Można prosić o wystawienie makra jeszcze raz ;) Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...
kfgz Opublikowano 6 Lutego 2008 Zgłoś Opublikowano 6 Lutego 2008 (edytowane) Można prosić o wystawienie makra jeszcze razTo żeś mi zabił ćwieka (ostatnio robiłem "czystkę" na serwerze). Na moim dysku już nie znajdę raczej tej funkcji, a i myśleć się nie chce. Może jutro... chyba, że hot_loopez gdzieś ma te makra. EDIT: http://mowa.home.pl/kfgz/arkusz_oo.zip Parametry wywołania to liczba (pierwszy) i liczba miejsc po przecinku (drugi). Makro only Open Office compatible ;). Oczywiście te w archiwum zip. W Excelu też będzie działać, o ile wkleisz kod. FUNCTION rm (x AS DOUBLE, y AS INTEGER) AS DOUBLE DIM rest AS DOUBLE DIM po AS DOUBLE DIM s AS DOUBLE DIM tmp AS DOUBLE po = 10 ^ y s = (INT(x * po) / po - INT(x)) * po rest = x - INT(x * po) / po tmp = 5 / 10 ^ (y + 1) IF rest > tmp THEN s = s + 1 ELSE IF (rest = tmp) AND (s mod 2 = 1) THEN s = s + 1 rm = INT(x) + s / poEND FUNCTION Edytowane 7 Lutego 2008 przez Dj_AnT Cytuj Udostępnij tę odpowiedź Odnośnik do odpowiedzi Udostępnij na innych stronach Więcej opcji udostępniania...