2017-08-25 87 views
-1

我有一個表格,其中有「用戶的電子郵件」,「電話號碼」等各種細節。我希望每當我點擊提交,這些領域的數據應該得到保存在同一張Excel表格,當我下次進行任何輸入和保存它,它應該將以前的數據添加兩行間隔。如何將數據保存在vba表單的同一張excel表單上?

我有這個現在,這是工作正常,但我希望每當我做一個新的條目它應該追加與以前的數據。

Private Sub CommandButton6_Click() 

Dim ws As Worksheet 

Set ws = Worksheets("Sheet1") 

ws.Range("A1") = " Troubleshooting Steps : " + Check1.Caption + vbCrLf + 
Check2.Caption + vbCrLf + Check3.Caption + vbCrLf + Check4.Caption + vbCrLf + Check5.Caption + vbCrLf + Check6.Caption 

ws.Range("A3") = "Summary : " + txtNotes.Text 

txtNotes.Text = "" 

End Sub 
+0

可以驗證在片材使用與本的最後一行:'LASTROW =工作表( 「Sheet1」)。Range(「A」&Rows.Count).End(xlUp).Row'然後,新範圍將爲:'Worksheets(「Sheet1」)。Range(「A」&LastRow + 2) '。 –

+0

我對此很陌生,所以我假設要添加 LastRow =工作表(「Sheet1」)。範圍(「A」和行數。)(Enl).Row 工作表(「Sheet1」)。範圍( 「A」&LastRow + 2) 在我的代碼這樣結束時,我是對不對? –

回答

0

您可以在數據庫中執行此插入新的數據:

Private Sub CommandButton_Click() 

    Dim ws As Worksheet 
    Dim LastRow As Long 
    Dim LastRange As Range 

    Set ws = ThisWorkbook.Sheets("Sheet1") 
    LastRow = ws.Range("A" & Rows.Count).End(xlUp).Row 

    Set LastRange = ws.Range("A" & LastRow + 2) 

    'Conidering the Users email in column A, users phone in column B and users name in column C 
    LastRange = UsersEmailTextBox.Text 
    LastRange.Offset(0, 1) = UsersPhoneTextBox.Text 
    LastRange.Offset(0, 2) = UsersNameTextBox.Text 
    '... 


End Sub 
+0

非常感謝,它幫助了 –

+0

@KarandeepSingh只需將此答案作爲正確的答案。別客氣。 –

+0

我希望每個文本都能以某種格式顯示,但我現在面臨的問題是顯示文件中已選中的複選框。 我修改了一下代碼,讓它們只在一個單元格中垂直方向 LastRange.Offset(1,0)=「LAN ID:」+ TextBox5.Text + vbCrLf +「Email:」+ TextBox6.Text + vbCrLf +「Extension:」+ TextBox7.Text + vbCrLf +「Alternate:」+ TextBox8.Text + vbCrLf –

0

我要顯示在我能夠做一些格式每個文本延伸,但這個問題我現在面臨現在顯示文件中的複選框。 我修改了一下你的代碼,讓它們在垂直方向上只有一個單元格

LastRange.Offset(1,0)=「LAN ID:」+ TextBox5.Text + vbCrLf +「Email:」+ TextBox6.Text + vbCrLf + 「擴展名:」 + TextBox7.Text + vbCrLf + 「替代:」 + TextBox8.Text + vbCrLf

enter image description here

相關問題