ich bin Recht neu in VBA. Ich habe mir diesen Code geschrieben um Werte aus unterschiedlichen Textboxen einer UserForm an eine weiter ExcelTabelle weiterzugeben und diese dort in die passenden Zellen einzugeben. Wahrscheinlich ist der Code nicht so schön, aber ich bin stolz das es überhaupt funktioniert.
Leider tritt dann folgendes Problem auf: Die neugeöffnete Datei lässt sich nicht schließen ohne das Userformscript zu killen. Am liebsten wäre es mir, wenn die neue Datei im Hintergrund geöffnet bleibt und ich zur userform zurückkehre oder dito wenn ich die 2. Datei schließe. Würde mich über nen Tipp freuen.
Sub HablgeBut_Click()
'Variablen Deklaration
Dim sFileName, sKstrNr, sName, sVName, sOrt, sStreet, sTelefon, sgas, sstrom, swasser, ssnr, slwl, sSM As String
sKstnr = KstNrBox.Text
sName = NameBox.Text
sVName = VNameBox.Text
sOrt = OrtBox.Text
sStreet = StreetBox.Text
sTelefon = TelBox.Text
snvbgas = nvbgasBox.Text
sstrom = nvbstromBox.Text
swasser = nvbwasserBox.Text
ssnr = nvbsnrBox.Text
slwl = nvblwlBox.Text
stSM = telekomBox.Text
sFileName = "C:\\Hausanschluss.xlsm"
If sKstnr = "" Then
MsgBox "Keine Kostenstelle ausgewählt. Bitte Kostenstelle wählen"
Exit Sub
Else
Workbooks.Open Filename:=sFileName, ReadOnly:=True
Workbooks("Hausanschlusst.xlsm").Worksheets("Datenblatt").Activate
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(2, 2).Value = sOrt
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(3, 2).Value = sStreet
Workbooks("Hausanschluss..xlsm").Worksheets("Datenblatt").Cells(6, 2).Value = sName
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(2, 2).Value = sOrt
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(2, 6).Value = sKstnr
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(13, 2).Value = sgas
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(14, 2).Value = sstrom
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(15, 2).Value = swasser
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(16, 2).Value = ssnr
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Cells(17, 2).Value = stSM
MsgBox "Wertr für Kostenstelle " & sKstnr & " übergeben."
Exit Sub
Workbooks("Hausanschluss.xlsm").Worksheets("Datenblatt").Deactivate
End If
End Sub