みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FM10です。
「あ」から「ん」までのボタンを作成し、
それらのボタンをクリックするとAフィールドに
入力できるようにしました。
1回目「あボタン」 → Aフィールド あ
2回目「いボタン」 → Aフィールド あい
濁音・半濁音・拗音も入力したいのですが、
すべてのボタンを作成するスペースがないので、
例えば「濁音ボタン」を作成し、Aフィールドに
「が」を入力したいのなら、まず「か」を入力して、
「濁音ボタン」をクリックすると「か」を「が」に変更すればと思い、
以下のスクリプトを組んでみました。
計算結果を挿入 (内容を選択なし)
[Let (
a = Right ( Aフィールド ; 1 ) ;
Case (
a = "か" ; "が" ; a = "き" ; "ぎ" ; a = "く" ; "ぐ" ; a = "け" ; "げ" ; a = "こ" ; "ご" ;
a = "さ" ; "ざ" ; a = "し" ; "じ" ; a = "す" ; "ず" ; a = "せ" ; "ぜ" ; a = "そ" ; "ぞ" ;
a = "た" ; "だ" ; a = "ち" ; "ぢ" ; a = "つ" ; "づ" ; a = "て" ; "で" ; a = "と" ; "ど" ;
a = "は" ; "ば" ; a = "ひ" ; "び" ; a = "ふ" ; "ぶ" ; a = "へ" ; "べ" ; a = "ほ" ; "ぼ" )
)]
if[Right ( Aフィールド ; 1 ) = "が" or Right ( Aフィールド ; 1 ) = "ぎ" or Right ( Aフィールド ; 1 ) = "ぐ"
or Right ( Aフィールド ; 1 ) = "げ" or Right ( Aフィールド ; 1 ) = "ご" or Right ( Aフィールド ; 1 ) = "ざ"
or Right ( Aフィールド ; 1 ) = "じ" or Right ( Aフィールド ; 1 ) = "ず" or Right ( Aフィールド ; 1 ) = "ぜ"
or Right ( Aフィールド ; 1 ) = "ぞ" or Right ( Aフィールド ; 1 ) = "だ" or Right ( Aフィールド ; 1 ) = "ぢ"
or Right ( Aフィールド ; 1 ) = "づ" or Right ( Aフィールド ; 1 ) = "で" or Right ( Aフィールド ; 1 ) = "ど"
or Right ( Aフィールド ; 1 ) = "ば" or Right ( Aフィールド ; 1 ) = "び" or Right ( Aフィールド ; 1 ) = "ぶ"
or Right ( Aフィールド ; 1 ) = "ぺ" or Right ( Aフィールド ; 1 ) = "ぼ"]
計算結果を挿入 (内容を選択あり)[Substitute ( Aフィールド ; Right ( Aフィールド ; 2 ) ; Right ( Aフィールド ; 1 ))]
Else
現在のスクリプト終了
End If
我ながら上手くできたと思っておりましたが、
1回目「かボタン」→Aフィールド か
2回目「かボタン」と「濁音ボタン」→ かが
3回目「かボタン」と「濁音ボタン」→ がが となる 本当は かがが となるはず
どうしたらよいでしょうか。根本的に考えが間違っているのなら貴方ならどうされますか。
よろしくご指導お願いいたします。
Offline
フィールド設定[ Let ( [
a=Right(F;1) ;
a = Hiragana ( Kanazenkaku ( Kanahankaku ( Katakana( a ) ) & "濁点" ) )
];
Case ( Length ( a ) = 1 ; Left ( F ; Length(F) -1) & a ; F )
)]
その原因だけ
3回目
かが
かがか
かがかが
となって、
「かが」を「が」に変えるのですから「がが」となりますね。
Offline
scripterさんのご回答を少し引用してこんな風にしてみました。
計算結果を挿入[選択;Aフィールド ; Hiragana ( KanaHankaku ( Katakana ( Aフィールド )) & "゛" )]
フィールド設定[Aフィールド ; Substitute ( Aフィールド ; ["か゛" ; "が"] ; ["き゛" ; "ぎ"] ; ["く゛" ; "ぐ"] ; ["け゛" ; "げ"] ; ["こ゛" ; "ご"] ; ["さ゛" ; "ざ"] ;
["し゛" ; "じ"] ; ["す゛" ; "ず"] ; ["せ゛" ; "ぜ"] ; ["そ゛" ; "ぞ"] ; ["た゛" ; "だ"] ; ["ち゛" ; "ぢ"] ; ["つ゛" ; "づ"] ; ["て゛" ; "で"] ; ["と゛" ; "ど"] ;
["は゛" ; "ば"] ; ["ひ゛" ; "び"] ; ["ふ゛" ; "ぶ"] ; ["へ゛" ; "べ"] ; ["ほ゛" ; "ぼ"] )]
同じく半濁音もこんな風にしてみました。
計算結果を挿入[選択;Aフィールド ; Hiragana ( KanaHankaku ( Katakana ( Aフィールド )) & "゜" )]
フィールド設定[Aフィールド ; Substitute ( Aフィールド ; ["は゜" ; "ぱ"] ; ["ひ゜" ; "ぴ"] ; ["ふ゜" ; "ぷ"] ; ["へ゜" ; "ぺ"] ; ["ほ゜" ; "ぽ"] )]
拗音はこんな風にしてみました。
計算結果を挿入[Aフィールド ; Substitute ( Right ( Aフィールド ; 1 ) ; ["や" ; "ゃ"] ; ["ゆ" ; "ゅ"] ; ["よ" ; "ょ"] )]
フィールド設定[Substitute ( Aフィールド ; ["やゃ" ; "ゃ"] ; ["ゆゅ" ; "ゅ"] ; ["よょ" ; "ょ"] )]
これでなんとか自分の思うようにできました。
Offline
Pages: 1
[ Generated in 0.020 seconds, 9 queries executed - Memory usage: 521.35 KiB (Peak: 525.89 KiB) ]