複数のテキストボックスを1つのセルに、2番目、3番目...のテキストボックスに値がない場合は、コードを続行する方法

ノヴァト

ユーザーフォームに4つのテキストボックスがあります。4つすべての値は、break(Char(10))とプレフィックス "Error1:"文字列で区切られた1つのセルに転送されますが、最初のテキストボックスのみに値があり、残りが空の場合、他のテキストボックスのプレフィックスセルにが表示されます。空のテキストボックスをスキップして、それらのプレフィックスをセルに転送できないかどうかを知りたいのですが。

Ifステートメントと「&」を使用してすべてのテキストボックスを1つのセルに追加しています。

a = Error1Box.Value
b = Error2Box.Value
c = Error3Box.Value
d = Error4Box.Value
If a = "" Then
    'Do Nothing
Else
    Cells(emptyRow, 16).Value = "Error1: " & a & Chr(10) & "Error2: " & b & Chr(10) & "Errro3: " & c & Chr(10) & "Error4: " & d
End If

私は期待しています:Error1Boxだけに値がある場合、セルはError1:description ..になります。

しかし、私が得ているのは:

Error1: Description...
Error2:
Error3:
Error4:

したがって、残りのテキストボックスが空の場合、値のあるもの以外は何も表示されません。

表示名

テキストボックスを繰り返し処理し、必要に応じてエラー文字列を作成できます。

Dim errString As String
Dim iTb As Long

For iTb = 1 To 4
    With Me.Controls("Error" & iTb & "Box")
        If .Value <> vbNullString Then errString = errString & Chr(10) & "Error" & iTb & ": " & .Value
    End With
Next
If errString <> vbNullString  Then Cells(emptyRow, 16).Value = Mid$(errString, 2)

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ