Gibt es eine Möglichkeit, dass ich möglicherweise die Funktion zu einer bestimmten Spalte für jede sheet
in der ActiveWorkbook
Ich habe verschiedene Versionen versucht, aber es scheint nicht richtig zu machen.Auswahl erste leere Zeile mit bestimmten Spalten für jedes Blatt VBA
Sub resetFilters()
Dim sht As Worksheet
On Error GoTo ErrorHandler
Application.ScreenUpdating = False
'On Error Resume Next
If ActiveSheet.FilterMode Then
ActiveSheet.ShowAllData
End If
Range("A3:T3").ClearContents
Application.ScreenUpdating = True
Call GetLastRow
Exit Sub
ErrorHandler:
Debug.Print "Error number: " & Err.Number & " " & Err.Description
End Sub
Private Function SelectFirstEmptyRowInColumnH(ByVal sheet As Worksheet, Optional ByVal fromColumn As Long = 8) As Long
SelectFirstEmptyRowInColumnH = sheet.Cells(sheet.Rows.Count, fromColumn).End(xlUp).Row
End Function
Private Sub GetLastRow()
Dim selectLastRow As Long
selectLastRow = SelectFirstEmptyRowInColumnH(ActiveSheet, 8)
Cells(selectLastRow, 8).Offset(1, 0).Select
End Sub
sollten Sie so ziemlich nie verwenden '.Select' usw. in Ihrem VBA-Code, da es ziemlich unnötig ist. Was versuchen Sie konkret zu erreichen? Was genau ist das Problem, das Sie sehen - "es funktioniert nicht richtig" ist nicht sehr beschreibend für Ihr Problem. – Dave
@Dave Ich brauche es, um die 'Auswahl' für die erste leere Zelle zu setzen, damit sie für die Dateneingabe bereit ist. Wie wird das möglich sein ohne 'select'? Auch brauche ich eine Möglichkeit, die Spalte basierend auf dem Blatt zu ändern, dass der Benutzer im Grunde in jedem Blatt ist, gibt es eine Tabelle, die fast die gleichen Header hat und möchte die Auswahl erste leere Zeile gleich. Die Spaltenüberschrift ist Stil, ich weiß nicht, ob ich die Spaltenüberschrift als Referenzen in der Funktion übergeben kann, um das gleiche Ergebnis auf allen "Blättern" zu erhalten. – QuickSilver