アクセスのほぼ初心者です。(若干のクエリ作成と、VBAの簡単なメンテナンスなら直すことが出来る程度です。)
アクセスのフォーム画面から、文字を入力する際に次の条件を満たして制限をかけたいのですが、どのような方法がありますでしょうか。
フォームのデザインから、〔プロパティ〕で文字数制限がかけられるようですし、記号の一律入力不可にする方法(IMEをオフにする?)があるようなのですが、一部の記号は入力可能としたいので、良い方法がわかりません。
文字数:半角140字以内
入力可能な文字:半角英数字、一部の記号(ただし、&、”、# は入力不可としたいです)
初心者には難しいかもしれないのですが、できれば入力している際に、文字数オーバーや使用出来ない文字を入力している際に〔警告〕が出せればと思っています。
今のところ、良い方法が分からず、一度エクセルにエクスポートしてからチェックしているのでとても時間がかかっているので、良い方法があれば教えて下さい。
No.1ベストアンサー
- 回答日時:
文字数の制限はテーブルをデザインビューで開いて
各フィールドのフィールドサイズで指定するのが(140)
確実かつ簡単です。指定数より多く入力しようとしても無視されます。
あとはフォームでの設定になります。
半角/全角はコントロールのプロパティで、IME入力モードを使用不可にします。
入力チェックは
コントロール(仮に名前をモジモジににます)の更新前処理に
Private Sub モジモジ_BeforeUpdate(Cancel As Integer)
Dim i As Integer
Dim chkMsg(2) As String
If Len(Me!モジモジ) > 140 Then chkMsg(0) = "文字数140以内"
If Len(Me!モジモジ) <> LenB(StrConv(Me!モジモジ, vbFromUnicode)) Then chkMsg(1) = "半角だけ"
For i = 1 To Nz(Len(Me!モジモジ), 0)
If Mid(Me!モジモジ, i, 1) Like "[&""#]" Then
chkMsg(2) = "&""#は不可"
Exit For
End If
Next
If Len(Join(chkMsg, vbCrLf)) > 6 Then 'vbcrlf以外にも文字が含まれている
MsgBox Join(chkMsg, vbCrLf)
Cancel = True
End If
End Sub
入力中のチェックは面倒くさいのでほんのさわりだけですが
キークリック時イベントで
Private Sub モジモジ_KeyDown(KeyCode As Integer, Shift As Integer)
If Shift = acShiftMask Then 'Shiftキーが押されていたら
Select Case KeyCode
Case vbKey2
MsgBox """ は不可"
KeyCode = 0 '入力は無かったことにする
Case vbKey3
MsgBox "# は不可"
KeyCode = 0
Case vbKey6
MsgBox "& は不可"
KeyCode = 0
End Select
End If
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) capeofdragonと申します。 Access2016を使っております。 あるフォームがあり、テ 2 2022/09/09 13:18
- その他(ソフトウェア) ソースネクストアプリをインストールし、製品登録で半角英数字が入力できない 5 2022/07/03 22:44
- 会計ソフト・業務用ソフト Googleドキュメントで数式を書くには 2 2022/07/20 09:06
- その他(プログラミング・Web制作) プログラミング pythonの問題について 2 2022/04/19 00:41
- Java Java 南京錠 2 2023/02/04 11:46
- デスクトップパソコン 40年間の悩み キーボードにおいて初期値として漢字ローマ字変換に設定する方法 8 2023/05/08 14:50
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- Android(アンドロイド) スマホの日本語入力の選択肢を変えるには 4 2023/07/29 19:07
- Excel(エクセル) エクセルでセルに何らかの文字が入力されたらそれを任意の数値として認識させる方法がしりたいです。 3 2023/03/16 20:19
このQ&Aを見た人はこんなQ&Aも見ています
-
見学に行くとしたら【天国】と【地獄】どっち?
みなさんは、一度だけ見学に行けるとしたら【天国】と【地獄】どちらに行きたいですか? 理由も聞きたいです。
-
3分あったら何をしますか?
カップ麺にお湯を入れて、できるまでの3分間で皆さんは何をしていますか?
-
これが怖いの自分だけ?というものありますか?
人によって怖いもの(恐怖症)ありませんか? 怖いものには、怖くなったきっかけやエピソードがあって聞いてみるとそんな感覚もあるのかと新しい発見があって面白いです。
-
【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
【お題】 ・こんなおせち料理は嫌だ
-
「黒歴史」教えて下さい
若気のいたりでやってしまったけれど、いまとなっては封印したい… そんなあなたの黒歴史を教えて下さい。
-
Access フォームのテキストボックスに半角英字のみで入力する設定は
Access(アクセス)
-
ACCESSの入力文字数の制限について
Access(アクセス)
-
ACCESS 入力文字数制限
Access(アクセス)
-
-
4
【ACCESS】入力規則(Len関数)の桁数の複数指定
Access(アクセス)
-
5
入力できる文字数を制限する方法
Access(アクセス)
-
6
Accessのテキストボックスの入力文字制限
Access(アクセス)
-
7
Accessで文字列の長さによって、フィールドの幅を自動で合わせる方法
Excel(エクセル)
-
8
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
9
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
10
選択したチェックボックスのみチェックを入れたいのですが
その他(データベース)
-
11
Access サブフォームでの選択行の取得
その他(データベース)
-
12
Accessで、フォームからフォームへ値を引き継ぐやり方
Access(アクセス)
-
13
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
14
Access レポート印刷するときに1ページに収める方法
Access(アクセス)
-
15
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
16
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
17
ACCESS──メインフォームでサブフォームのレコード件数をカウントしたい
Access(アクセス)
-
18
ACCESSのフォームで次のレコードに移動しない方法を教えてください
その他(データベース)
-
19
ACCESSでテーブルにあるチェックボックスを一括でYesにする方法を教えてください
Access(アクセス)
-
20
Accessでテーブルの値をテキストボックスに代入するには?
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ハイフンを全角で入力
-
縦書きのテキストボックスで数...
-
エクセルでの文字入力がIMEでし...
-
文字変換で「うぉ」を入力した...
-
デスクトップ画面でファイルの...
-
σ(シグマ)の字体が途中から変...
-
Excelの半角、全角の( )カッ...
-
マウスのクリック、指離したの...
-
縦書き文章で『―』表示を『|』...
-
¥マークのキーにある横棒の出...
-
エクセルの下部のシートタブの...
-
マウスでスクロールすると画面...
-
Windows10のフォトでマウスの戻...
-
エクセルでセルの書式設定がで...
-
Word2007でTabキーを押すと改ペ...
-
ワークシートの行が途中から表...
-
Excelで保護のかかったシートの...
-
遼という漢字の「しんにょう」...
-
ミドルバー(真ん中棒)
-
Windows10 に画面にした 端っこ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
縦書きのテキストボックスで数...
-
ハイフンを全角で入力
-
アクセスのフォームに入力する...
-
エクセルでの文字入力がIMEでし...
-
Excelの半角、全角の( )カッ...
-
記号を打つと勝手に入力モード...
-
IMEで、テンキーから入力すると...
-
半角英数入力で→を入力する方法
-
ファイルを保存する際に日本語...
-
σ(シグマ)の字体が途中から変...
-
テンキーからの半角数字の”直接...
-
IME直接入力モードでの・(半角)...
-
InputBoxでの日本語オン、オフ...
-
半角英数と直接入力の文字の違...
-
文字変換で「うぉ」を入力した...
-
デスクトップ画面でファイルの...
-
キーボードの「ろ」の所にある...
-
DOSコマンドで日本語名のファイ...
-
言語バーを常に日本語入力にし...
-
Outlook Express で、IMEの入力...
おすすめ情報