Für das das ich vor 2 Monat zum ersten mal von VBA gehört habe
Danke für deine Anerkennung
Habe das neue Audit mal hinterlegt
Leeren Funktioniert auf allen Pages
Drucken Funktioniert da ich die Userform Drucke
Speichern geht noch in die Falsche richtung aber mit ein wenig Hilfe wird das noch werden
Vielleicht hat jemand eine Idee wie die Formel ändern muss so das sie in der Userform funktioniert
Der Rot Markierte Bereich sollte in die Tabelle Übersicht gespeichert werden
Hab an 2 Varianten schon herumgedoktert aber ohne erfolg
Code:
Private Sub CommandButton_Speichern_Click()
'Dim objControl As MSForms.Control
Dim obj As Object
Dim ziel As Double
Dim arr(10) As Variant
Dim az As Integer
ziel = range("A65536").End(xlUp).row
For Each obj In Me.Controls
'For Each objControl In MultiPage1.SelectedItem.Controls
If Left(obj.Name, 4) = "Textbox" Then
'If TypeOf objControl Is MSForms.TextBox Then
'arr(az) = obj.Value
arr(az) = obj
az = az + 1
End If
Next obj
'Next objControl
Worksheets("Übersicht").range("A" & ziel, "J" & ziel) = arr
End Sub
Der Blau Makierte Bereich soll je nach Auswahl der Combobox in die Tabelle und denn gewünschte Zeile gespeichert werden
Habe hier etwas für die ersten 2 Pages aber wie ändere ich diese so das man von der Userform speichert
Code:
Dim locations
locations = ComboBox.Value("Scheibbs", "Purkersdorf", "St Pölten URB", "Lilienfeld", "Wien")
Select Case ComboBox.Value
Case "Scheibbs": UserForm2.ComboBox.Value.Copy
Worksheets("Scheibbs").Cells(1, Cells(1, Columns.Count).End(xlToLeft).Column + 1).PasteSpecial xlPasteValues
Dim locations
locations = Array("Scheibbs", "Purkersdorf", "St Pölten URB", "Lilienfeld", "Wien")
Select Case (range("J6"))
Case "Scheibbs": Worksheets("Menü").range("O42").Copy
Worksheets("Scheibbs").Cells(1, Cells(1, Columns.Count).End(xlToLeft).Column + 1).PasteSpecial xlPasteValues
Case "Purkersdorf": Worksheets("Menü").range("O42").Copy
Worksheets("St Pölten").Cells(1, Cells(1, Columns.Count).End(xlToLeft).Column + 1).PasteSpecial xlPasteValues
06.09.2018, 16:41 (Dieser Beitrag wurde zuletzt bearbeitet: 06.09.2018, 16:41 von schauan.)
Hallo Lea,
wo hakt es denn genau? Hast Du mal die Inhalte Deiner Variablen geprüft? Gehe dazu den Code schrittweise mit F8 durch, und kontrolliere auch ab und zu, was auf dem Blatt passiert.
(Wenn, wie im Bild dargestellt, in den Boxen nichts steht, dann kommt auch nichts ins Blatt.)
Zuerst mal zum ersten Code.
Da könnte diese Zeile bewirken, dass Du immer wieder die letzte Zeile Deines Datenbereichs überschreibst
ziel = range("A65536").End(xlUp).row
denn mit xlUp kommst Du meistens in die letzte beschriebene Zelle.
Könnte aber sein, dass Du erst in Axxx was einträgst, was dann überschrieben werden soll?
Ansonsten müsste er aber laufen - sofern nicht zu viele TextBoxen angesprochen werden.
Da wäre statt diesem Satz "Hab an 2 Varianten schon herumgedoktert aber ohne erfolg" eine Fehlermeldung interessant, falls eine kommt
. \\\|/// Hoffe, geholfen zu haben. ( ô ô ) Grüße, André aus G in T ooO-(_)-Ooo (Excel 97-2019+365)
@[b]schauan[/b] Entschuldige hatte ein wenig viel um die Ohren
Danke für Deinen hinweiß
Hatte keine Fehlermeldungen oder der gleichen
Hab nun alles neu gemacht neue Sheets neue Userform und schau an selbst das ChartSpace funkt zwar nicht so schon aber es geht
das Speichern geht auch zwar nur page1 aber es wird mit euer hilfe
Code:
Dim lngIndex As Long
With Tabelle8
With .Cells(.Rows.Count, 1).End(xlUp).Offset(1)
For lngIndex = 1 To 10
.Offset(, lngIndex - 1).Value = _
Controls("TextBox" & CStr(lngIndex)).Text
Next
End With
End With
da = 1 to 10 nur die ersten 10 Textboxen anspricht
Also wie muss ich diesen Code umschreiben um die restlichen Textboxen anzusprechen die auf den Pages liegen
Danke euch schon mal im vorhinein
Hab mal das neue Audit im Anhang