1

私の問題を手伝ってもらえますか、私のプログラムで起こりたいのは、この「Vincent」のようにユーザーフォームのテキストボックスに名前を入力すると、同じ方法でシートに渡されることです

Private Sub cmdAdd_Click()
    If cmdAdd.Caption = "ADD" Then
        txtName.Enabled = True: cboAge.Enabled = True:
        cmdAdd.Caption = "SAVE": cmdClose.Caption = "CANCEL"
        txtName.SetFocus
    Else
        If txtName.Text = "" Or cboAge.Text = "" Then
            MsgBox "Required field(s) missing!", vbCritical, "Message"
        Else
            For i = 2 To Sheet1.Cells(Rows.Count, 1).End(xlUp).Row
                If LCase(txtName.Text) = Sheet1.Cells(i, 1).Value And _
                cboAge.Text = Sheet1.Cells(i, 2).Value Then
                    MsgBox "Record already exist!", vbExclamation, "Message"
                    Call UserForm_Activate
                    Exit Sub
                End If
            Next i

            r = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row + 1
            Sheet1.Cells(r, 1).Value = (txtName.Text)
            Sheet1.Cells(r, 2).Value = cboAge.Text
            r = 0
            MsgBox "One record saved!", vbInformation, "Message"
            Call UserForm_Activate
        End If
    End If
End Sub

これはあなたが私を助けることができるコードです..ありがとう

4

1 に答える 1

1

PropercaseStrConvに変換するために使用します。このMSDNリンクを参照してください

Debug.Print StrConv(Textbox1.Text, vbProperCase)

たとえば(コードから)

Sheet1.Cells(r, 1).Value = StrConv(txtName.Text, vbProperCase)
于 2013-09-23T13:15:05.293 に答える