こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【Access2010】 改行数および文字数の制限

下記リンクを参考に、更新前処理とキー入力時に改行数の制限をかけました。
※テキストボックス名「申請理由」

参考リンク → http://www.accessclub.jp/bbs3/0064/superbeg24259.html

ここに、さらに1行当たりの文字数を「35」(バイト数70)という制限を追加したいのですが、どうすればよろしいでしょうか?

投稿日時 - 2020-01-14 07:59:37

QNo.9701482

困ってます

質問者が選んだベストアンサー

たとえば以下のような感じでいかがですか

Private Sub 申請理由_BeforeUpdate(Cancel As Integer)
Dim mStr As Variant, i As Integer
Dim oStr As String

If IsNull(Me.申請理由.Value) Then
Exit Sub
End If
mStr = Split(Me.申請理由, vbCrLf)
If UBound(mStr) >= 3 Then
Cancel = True
MsgBox "3行以内で入力して下さい。"
End If
oStr = ""
For i = 0 To UBound(mStr)
If LenB(StrConv(mStr(i), vbFromUnicode)) > 70 Then
Cancel = True
oStr = oStr & i + 1 & "行目" & vbCrLf
End If
Next
If oStr <> "" Then
MsgBox oStr & "70バイトを超えています。", vbCritical
End If
End Sub

投稿日時 - 2020-01-14 08:50:15

お礼

ご回答ありがとうございました。

パーフェクトです!!

「○行目」という表示がいいですね。他のAccessにも流用できます。
大変助かりました。

投稿日時 - 2020-01-14 10:30:25

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問