Darmowe arkusze Excel i Calc
Nawigacja
Strona Główna
Artykuły
Download
FAQ
Forum
Linki
Zasady
Kontakt
Szukaj
Regulamin

WÄ…tki na Forum
Najnowsze Tematy
Arkusze googla
Arkusz kalkulacyjny ...
kalkulator leasingowy
Jak skopiować tylko...
Excel błędnie sumuje!
Najciekawsze Tematy
Jak skopiować ty... [6]
Excel błędnie s... [6]
Wyszukiwanie dat ... [6]
Funkcje, Arkusze ... [6]
Pomocy!!!!!!!!! [5]
Statystyka
Darmowe arkusze Excel i Calc
WITAMY:
Allenelord
jako nowego użytkownika.

Zarejestrowanch Uzytkowników: 192

Super Administratorzy: 1
Administratorzy: 0
Użytkownicy: 191

Użytkownicy Online:

piotr149 tygodni
grzesiu216 tygodni
Waldi457 tygodni
Allenelord458 tygodni
Dannyitaks461 tygodni

Gości Online: 2

Twoje IP to: 216.73.216.159

Kategorie Forum 14
WÄ…tki na Forum 21
Posty na Forum 82
Komentarzy 19
Newsy 106
Artykuły 22
Ściągniętych plików 51
Kategorie Downloads 4
Ciekawe Strony 10
Postów w Shoutbox 76
Toplisty i katalogi
Te banery dają naszej stronie życie:
Tutaj znajdziesz Strony zaprzyjaźnione i strony sponsorów serwisu: Będą to strony dla zainteresowanych transportem, techniką transportową i historią transportu oraz obliczeniami.
A teraz rózne różności, np.: transport do celu,ladunki na czas, ale nie tylko oczywiście.
Są jeszcze ciekawostki dla inżynierów i studentów: arkusze kalkulacyjne. Może Cię zaciekawi?
Statystyki strony
Analiza oglądalności witryny


Zamiana liczby na słowny odpowiednik
Padło pytanie zasługujące na odpowiedź. wolfik123 napisał:
Czy ktoś ma może makro które wpisuje słownie daną kwotę?
Jest problem.... trzeba pomóc. Na jednym z forów dyskusyjnych dotyczących excela zostało zamieszczone poniżej cytowane makro. Jest ono bardzo ciekawe bo bez zmian działa w excel'u i calc'u. Takie rozwiązania zdecydowanie polecamy. Autor, żeby zabezpieczyć makro przed bezmyślnym kopiowaniem, pozostawił w kodzie pewien błąd. Pozwoliłem sobie przejrzeć to makro i usunąć 1 (słownie jeden) błąd. Mam nadzieję, że to już wszystkie pułapki autora ale głowy nie daję. Dlatego radzę przed przedstawieniem niniejszego kodu jako własnego SPRAWD¬ GO! WARTO!! A teraz do dzieła oto "mroczny przedmiot pożądania":



Public Function slownie(wejscie As Variant) As String

'Funkcja konwersji wartosci liczbowej (int/cur/double/float) na liczebnik (string)
'---------------------------------------------------------------------------
' ................... autor : Barman .. bke@o2.pl
'.................... poprawił : piotr snob.ovh.org
'....................................
'---------------------------------------------------------------------------

'........ UWAGA ....................
'Autor nie bierze odpowiedzialności, za ewentualne niewłasciwe działanie 'programu ;-)
'W FUNKCJI CELOWO ZOSTA£ ZASZYTY PEWIEN B£¡D, zatem bezmyślne kopiowanie i
'wpinanie funkcji do własnych komercyjnych aplikacji nie jest wskazane
'Piotr napisał:
'jeden błąd usunąłem jeżeli jest jeszcze inny to... sorry
'...................................

Dim tys_pusty As Boolean
Dim mln_pusty As Boolean
Dim ile_cyfr As Integer
Dim liczba As Variant
Dim i As Integer
Dim temp As String
Dim jednosci As Variant
Dim dziesiatki As Variant
Dim setki As Variant
Dim tys As Variant
Dim milion As Variant
Dim miliard As Variant
Dim bilion As Variant

'definicje tablic liczebników składowych
jednosci = Array("", "jeden ", " dwa ", " trzy ", " cztery ", " pięć ", "sześć ", " siedem ", " osiem ", " dziewięć ")
dziesiatki = Array("", " dziesięć ", " dwadzieścia ", " trzydzieści ", "czterdzieści ", " pięćdziesiąt ", " sześćdziesiąt ", " siedemdziesiąt ", "osiemdziesiąt ", " dziewięćdziesiąt ")
setki = Array("", " sto ", " dwieście ", " trzysta ", " czterysta ", "pięćset ", " sześćset ", " siedemset ", " osiemset ", " dziewięćset ")
tys = Array("", " tysiąc ", " tysiące ", " tysięcy ")
milion = Array("", " milion ", " miliony ", " milionów ")
miliard = Array("", " miliard ", " miliardy ", " miliardów ")
bilion = Array("", " bilion ", " biliony ", " bilionów ")

nascie = Array("", " jedenaście ", " dwanaście ", " trzynaście ", "czternaście ", " piętnaście ", " szesnaście ", " siedemnaście ", "osiemnaście ", " dziewiętnaście ")
tys_pusty = False
mln_pusty = False
flgnast = False
napis = Format(wejscie, "####0.00")
slownie=""
ile_cyfr = Len(napis) - 3


For i = 1 To ile_cyfr
Select Case (( (3 + ile_cyfr - i)) Mod 3)
Case 1
If ((ile_cyfr > 1) And (Val(Mid(napis, (i), 2)) < 20) And (Val(Mid(napis, (i), 2)) > 10)) Then
slownie = slownie & nascie(Val(Mid(napis, i + 1, 1)))
i = i + 1
flgnast = True
Else
slownie = slownie & dziesiatki(Val(Mid(napis, i, 1)))
End If

Case 0
slownie = slownie & jednosci(Val(Mid(napis, i, 1)))

Case Else
slownie = slownie & setki(Val(Mid(napis, i, 1)))
End Select


If ((ile_cyfr - i) = 12) Then
Select Case Val(Mid(napis, i, 1))
Case 1
If (ile_cyfr) > 13 Then
slownie = slownie & bilion(3)
Else
slownie = slownie & bilion(1)
End If
Case 2 To 4
slownie = slownie & bilion(2)
Case Else
slownie = slownie & bilion(3)
End Select
End If

If (ile_cyfr - i) = 9 Then

If flgnast = True Then
slownie = slownie & miliard(3)
flgnast = False
Else
Select Case Val(Mid(napis, i, 1))
Case 1
If (ile_cyfr) > 10 Then
slownie = slownie & miliard(3)
Else
slownie = slownie & miliard(1)
End If
Case 2 To 4
slownie = slownie & miliard(2)
Case Else
slownie = slownie & miliard(3)
End Select
End If
End If

If (ile_cyfr - i) = 6 Then
If (Val(Mid(napis, (i + 1), 3)) = 0) Then
tys_pusty = True
End If

If flgnast = True Then
slownie = slownie & milion(3)
flgnast = False
Else
Select Case Val(Mid(napis, i, 1))
Case 1
If (ile_cyfr) > 7 Then
slownie = slownie & milion(3)
Else
slownie = slownie & milion(1)
End If
Case 2 To 4
slownie = slownie & milion(2)
Case Else
slownie = slownie & milion(3)
End Select
End If
End If

If ((ile_cyfr - i) = 3 And tys_pusty = False) Then
If flgnast = True Then
slownie = slownie & tys(3)
flgnast = False
Else
Select Case Val(Mid(napis, i, 1))
Case 1
If (ile_cyfr) > 4 Then
slownie = slownie & tys(3)
Else
slownie = slownie & tys(1)
End If
Case 2 To 4
slownie = slownie & tys(2)
Case Else
slownie = slownie & tys(3)
End Select
End If
End If

Next

slownie = slownie & " zł "
slownie = slownie & Mid(napis, (Len(napis) - 1), 2) & "/100 gr"

End Function


POWODZENIA!

Dodane przez piotr dnia February 16 2007 20:48:580 Komentarzy · 7427 CzytaÅ„ - Drukuj
Komentarze
Brak komentarzy.
Dodaj komentarz
Zaloguj się, żeby móc dodawać komentarze.
Oceny
Dodawanie ocen dostępne tylko dla zalogowanych Użytkowników.

Proszę się zalogować lub zarejestrować, żeby móc dodawać oceny.

Brak ocen.
Logowanie
Nazwa Użytkownika

Hasło



Nie jesteś jeszcze naszym Użytkownikiem?
Kilknij TUTAJ żeby się zarejestrować.

Zapomniane hasło?
Wyślemy nowe, kliknij TUTAJ.
Ankieta
Czego mi brakuje?

Wiadomości i nowinek

Więcej arkuszy do załadowania

To wszystko jest do chrzanu

Musisz się zalogować, żeby móc głosować w tej Ankiecie.

Szukaj
Google
Shoutbox
Tylko zalogowani mogą dodawać posty w shoutboksie.

szterke121
23/10/2015 09:01
Dzień dobry wszystkim, poszukuję kalkulatora leasingowego, jestem świeży i nie wiem czy pytam w dobrym miejscu, dzieki!

piotr
03/08/2013 08:38
Dzieje się! Wystarczy zapytać! Mamy arkusze i rady, i wiele innych rzeczy

Agata
24/07/2013 09:43
coś się tu dzieje? Szkoda bi niektóre rzeczy są ciekawe !

piotr
23/10/2012 16:38
To ważne o co pytasz, dlatego masz całego newsa

Bulbula
23/10/2012 15:29
Co w Calcu odpowiada F4 z excela?

Archiwum
Copyright Piotr-Prym © 2006- 2017