Sziasztok
Egy kis segitségre lenne szükségem. Irtam egy függvényt, ami a morze jeleket irja ki, de megirtam az inverzét is de nem mükxik.
Itt az egyik: Function MORSE(ByVal Text As String) As String
Dim CMorse, CNorm, C As String
Dim I, L, M As Integer
CNorm = Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "A", "B", "C", "D""E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z")
CMorse = Array("-----", ".----", "..---", "...--", "....-", ".....", "-....", "--...", "---..", "----.", ".-", "-...", "-.-.", "-..", ".", "..-", "--.", "....", "..", ".---", "-.-", ".-..", "--", "-.", "---", ".--.", "--.-", ".-.", "...", "-", "..-", "...-", ".--", "-..-", "-.--", "--..")
Text = UCase$(Text)
L = Len(Text)
On Error Resume Next
For I = 1 To L
C = Mid$(Text, I, 1)
If C Like "[.-]" Then MORSE = CVErr(xlErrValue): Exit Function
M = WorksheetFunction.Match(C, CNorm) - 1
If CNorm(M) = C Then
MORSE = MORSE & CMorse(M)
Else
MORSE = MORSE & C
End If
If I < L And C <> "" Then MORSE = MORSE & ""
Next I
End Function
és itt a másik ami nem mükxik:
Function MORSEINVERSE(Texte As String) As String
Dim CMorse, CNorm, C As String
Dim I, L, M, J As Integer
CMorse = Array("-", "--", "---", "-----", ".", "-.", "--.", "----.", ".-", "-.-", "--.-", ".--", "-.--", ".---", ".----", "..", "-..", "--..", "---..", ".-.", "-.-.", ".--.", "..-", "-..-", "..---", "...", "-...", "--...", ".-..", "..-.", "...-", "...--", "....", "-....", "....-", ".....")
CNorm = Array("T", "M", "O", "0", "E", "N", "G", "9", "A", "K", "Q", "W", "Y", "J", "1", "I", "D", "Z", "8", "R", "C", "P", "U", "X", "2", "S", "B", "7", "L", "F", "V", "3", "H", "6", "4", "5")
L = Len(Texte)
On Error Resume Next
I = 1
Do
Do
J = InStr(I, Texte, "")
If J <> I Then Exit Do
MORSEINVERSE = MORSEINVERSE & " "
I = I + 1
Loop
C = Mid$(Texte, I, IIf(J, J, L + 1) - I)
M = WorksheetFunction.Match(C, CNorm) - 1 'Hol.van(Ké,T,Et)
If CMorse(M) = C Then MORSEINVERSE = MORSEINVERSE & CNorm(M) Else MORSEINVERSE = MORSEINVERSE & C
I = J + 1
Loop While J
End Function
elöre is köszönöm a segitséget