Excel VBA:我试图创建一个按钮来附加文件a将文件存储在单元格中,并且每次按enter键时都会跳过用户表单中的textbox2

Excel VBA:我试图创建一个按钮来附加文件a将文件存储在单元格中,并且每次按enter键时都会跳过用户表单中的textbox2,excel,vba,Excel,Vba,Excel VBA:我正在尝试创建一个按钮来附加文件a并将其存储在单元格G2和G2上。然而,每次我输入时,它只在G2中得到输入。如果用户决定输入更多数据,则输入数据将迭代到新行中,但附件保留在第G2行中,并取代上一行。每次我按enter键时,都会跳过用户表单中的textbox2。我希望我的用户能够轻松地使用键盘导航,但如果我在textbox1中完成并按下enter键,我将进入textbox3而不是textbox2。 "=======================================

Excel VBA:我正在尝试创建一个按钮来附加文件a并将其存储在单元格G2和G2上。然而,每次我输入时,它只在G2中得到输入。如果用户决定输入更多数据,则输入数据将迭代到新行中,但附件保留在第G2行中,并取代上一行。每次我按enter键时,都会跳过用户表单中的textbox2。我希望我的用户能够轻松地使用键盘导航,但如果我在textbox1中完成并按下enter键,我将进入textbox3而不是textbox2。 "=============================================================================================

Private Sub SubmitButton_Click()
暗淡无光
Dim wrkSht As工作表
设置wrkSht=工作表(“表1”)
将应用程序定义为对象
将emailItem设置为对象
iRow=wrkSht.Cells.Find(内容:=“*”,搜索顺序:=xlRows,搜索方向:=xlPrevious,查找:=xlValues)。行+1
如果Trim(RequesterBox.Value)=“”,则
RequesterBox.SetFocus
MsgBox“请填写表格”
出口接头
如果结束
wrkSht.Cells(iRow,1).Value=RequesterBox.Value
wrkSht.Cells(iRow,2).Value=中队箱.Value
wrkSht.Cells(iRow,3).Value=EmailBox.Value
wrkSht.Cells(iRow,4).Value=PhoneBox.Value
wrkSht.Cells(iRow,5).Value=LocationBox.Value
wrkSht.Cells(iRow,6).Value=DescriptionBox.Value
MsgBox“请求已成功添加。感谢您提交,不久将有人与您联系”,vbOKOnly+vbInformation,“谢谢”
“------------------------------------发送电子邮件-----------------”
设置emailApplication=CreateObject(“Outlook.Application”)
设置emailItem=emailApplication.CreateItem(0)
emailItem.To=“”
emailItem.Subject=“贷款申请”
emailItem.Body=“已提交对“&LocationBox.Value&”的请求,并附有以下说明:“&Chr(10)&”_
DescriptionBox.Value
emailItem.Display
设置emailItem=Nothing
设置emailItemApplication=Nothing
RequesterBox.Value=“”
中队箱。Value=“”
EmailBox.Value=“”
PhoneBox.Value=“”
LocationBox.Value=“”
DescriptionBox.Value=“”
RequesterBox.SetFocus
端接头
专用子附件按钮\单击()
设置wrkSht=工作表(“表1”)
Dim LINKS列表作为范围
暗淡无光
连接长度为
设置链接列表=范围(“G2”)
表1.范围(“G2”)。选择
'声明要插入链接的最后一行
lastRowLink=WorksheetFunction.CountA(工作表(“Sheet1”).Range(“G:G”))
表(“表1”)。单元格(lastRow+1,11)。值=链接已附加
ChDrive“C:\”
ChDir“C:\”
Filt=“PNG文件(*.PNG),*.PNG,”&_
“Jpeg文件(*.Jpeg),*.jpg,”&_
“PDF文件(*.PDF),*.PDF,”&_
“所有文件(**),***”
FilterIndex=1
Title=“选择要超链接的文件”
FileName=Application.GetOpenFilename_
(FileFilter:=Filt_
FilterIndex:=FilterIndex_
头衔:=头衔)
如果文件名为False,则
wrkSht.Hyperlinks.Add锚定:=链接列表_
地址:=文件名_
TextToDisplay:=文件名
其他的
MsgBox“未选择任何文件”,vbCritical,“加载错误”
出口接头
如果结束
端接头

我希望它能帮助你

专用子附件按钮2\u单击()

将最后一行变长,下一行变长
将ws设置为工作表
暗淡的新记录作为范围
设置ws=ThisWorkbook.Worksheets(“Sheet1”)
与ws
'getlcurrent最后一行
lastRow=.Cells(.Rows.Count,“G”).End(xlUp).Row
“获取下一个Id
nextId=Val(.Range(“G”)和lastRow.Value)+1
"创新纪录",
设置新记录=.Range(“G”&lastRow+1)
'插入数据
newRecord.Value=nextId
'选择文件
ChDrive“C:\”
ChDir“C:\”
Filt=“PNG文件(*.PNG),*.PNG,”&_
“Jpeg文件(*.Jpeg),*.jpg,”&_
“PDF文件(*.PDF),*.PDF,”&_
“所有文件(**),***”
FilterIndex=1
Title=“选择要超链接的文件”
Filename=Application.GetOpenFilename_
(FileFilter:=Filt_
FilterIndex:=FilterIndex_
头衔:=头衔)
如果文件名为False,则
.Hyperlinks.Add锚定:=新记录_
地址:=文件名_
TextToDisplay:=文件名
其他的
MsgBox“未选择任何文件”,vbCritical,“加载错误”
出口接头
如果结束
以
端接头

Dim lastRow As Long, nextId As Long
Dim ws As Worksheet
Dim newRecord As Range


Set ws = ThisWorkbook.Worksheets("Sheet1")

    
With ws
    'getlcurrent last row
    lastRow = .Cells(.Rows.Count, "G").End(xlUp).Row
    'get next Id
    nextId = Val(.Range("G" & lastRow).Value) + 1
    'set new record
    Set newRecord = .Range("G" & lastRow + 1)
    'insert data
    newRecord.Value = nextId


    'select file
    ChDrive "C:\"
    ChDir "C:\"
    Filt = "PNG Files(*.png),*.png ," & _
            "Jpeg Files(*.jpeg),*.jpg ," & _
            "PDF Files (*.pdf),*.pdf ," & _
            "All Files (*.*),*.*"
    FilterIndex = 1
    Title = "Select a File to Hyperlink"
    Filename = Application.GetOpenFilename _
        (FileFilter:=Filt, _
         FilterIndex:=FilterIndex, _
         Title:=Title)
    If Filename <> False Then
       .Hyperlinks.Add Anchor:=newRecord, _
       Address:=Filename, _
       TextToDisplay:=Filename
    Else
        MsgBox "No file was selected.", vbCritical, "Loading Error"
        Exit Sub
    End If
    


End With