Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Jak napisać program komputerowy...

Doktór 13 Sie 2010 22:18 1669 2
  • #1 13 Sie 2010 22:18
    Doktór
    Poziom 1  

    Witam szanownych kolegów. Ja również mam zamiar napisać program, myślę że dość prosty, chciałbym mianowicie stworzyć program, który dowolną liczbę słów pochodzących z zaimportowanej lub wklejonej listy (np. w pliku .txt) zamieni na liczby w ten sposób, że określone litery w tych słowach zamieni na cyfry. Wynik chciałbym otrzymać w .txt lub Excel'owskim pliku, najlepiej w dwóch odpowiadających sobie kolumnach liczba-wyraz. Chodzi mi o zrobienie listy potencjalnych pamięciowych "zakładek numerycznych", taka technika mnemotechniczna, być może kojarzycie.

    tutaj podaję litery, które chciałbym zamienić na określone liczby (te i tylko te żeby były "brane pod uwagę" przez program;) ):

    1 - t lub d
    2 - n
    3 - m
    4 - r
    5 - l
    6 - j
    7 - k lub g
    8 - f lub w
    9 - p lub b
    0 - z lub s

    Przykład wyniku takiej operacji:
    15 TaLerz
    16 TuJa
    17 TyczKa


    Jak widać powyżej, chciałbym odsiać takie zbitki jak cz, sz, dz, dź, dż, rz i nie zamieniać w nich liter na cyfry.

    Bardzo proszę o wyrozumiałość i cierpliwość. Jestem kompletnie zielony w tej akurat dziedzinie, niczym dziecko we mgle (za moich czasów i na moim profilu nie uczyli tego jeszcze w szkołach) a ten program jest mi bardzo potrzebny. Poza tym chcę się oswoić z programowaniem, bo na razie to dla mnie terra incognita.
    Bardzo proszę o wskazówki jak to zrobić. W jakim programie to zrobić? W jakim języku? Jakie macie ogólne wskazówki w jaki sposób ugryźć ten akurat problem, jak Wy byście napisali taki programik? Od czego zacząć?
    Tylko proszę nie odpowiadajcie "wybierz sobie" itd. bo nie mam rozeznania, a zresztą potem po czasie człowiek się dowiaduje, że w "tym" to akurat to się nie da, bo coś tam - trochę to zniechęcające dla początkującego;)

    Dzięki z góry za pomoc
    pozdrawiam

    Proszę zakładać własne tematy, a nie odkopywać archiwa. Posty oddzieliłem - arnoldziq

    0 2
  • #2 13 Sie 2010 22:53
    marcinj12
    Poziom 40  

    Najprościej nie "dotykając" nawet żadnego języka programowania zrobisz to w Excelu nagrywając sobie makro.

    Klikasz nagrywanie makra.
    Funkcją LITERY.WIELKIE zamieniasz sobie tekst na duże litery.
    Kopiujesz wyniki formuły i wklejasz specjalnie jako wartości.
    Zaznaczasz całą kolumnę i przez CTRL+H zastępujesz kolejne litery alfabetu na pożądaną cyfrę lub na nic. Po tej operacji w kolumnie pozostaną Ci same cyfry.
    Kończysz nagrywanie makra.

    Potem możesz uruchomić makro na dowolnej liście.

    0
  • #3 16 Sie 2010 14:28
    tagy
    Poziom 13  

    Dla poprawnego funkcjonowania mojej propozycji konieczne jest spełnienie następujących wymagań:

    W kolumnie A i B znajduje się "słownik podmnian" czyli informacja jakie zbitki i litery zamieniane są na jakie cyfry.

    Jak napisać program komputerowy...

    W kolumnie H znajdują się słowa do podmiany.

    Następnie w VBA wklejasz poniższy kod i uruchamiasz.

    Code:
    Sub podmieniaj()
    
    Dim tekst As String
    Dim i As Integer, a As Integer
    For i = 1 To Cells(65536, 8).End(xlUp).Row
        tekst = LCase(Cells(i, 8).Value)
        For a = 1 To Cells(65536, 1).End(xlUp).Row
            tekst = Application.WorksheetFunction.Substitute(tekst, Cells(a, 1), Cells(a, 2))
        Next a
        Cells(i, 9).Value = tekst
    Next i
    End Sub


    Jeżeli potrzebujesz i chcesz to wytłumaczę linia po linii co robi ta procedura.

    0