mein Problem in dem Code unten, besteht darin, dass cell immer "Nothing" ist. Das liegt daran, dass ich die Arbeitsmappe die im Hintergrund geöffnet wurde nicht ausgewählt habe und die Excel-Datei, in der der Code ausgeführt wird, enthält den gesuchten Wert nicht.
Wie wähle ich also ein Workbook was im Hintergrund geöffnet ist aus und greife darauf zu?
Hier mein Code:
Public Sub InNutzung()
Dim pfad, Dateiname As String
Dim count As Integer
Dim cell As Range
Dim wb As Workbook
Dim ws As Worksheets
Dim Source As Object
count = 0
pfad = "C:\Users\A56296611\OneDrive - Deutsche Telekom AG\Berichtautomatisierung TNL-West\"
Dateiname = Dir(pfad & "*ZFP*")
Application.ScreenUpdating = False
'öffnet alle relevanten Excel-Dateien im Hintergrund
'Do While Dateiname ""
' GetObject pfad & "\" & Dateiname
' Dateiname = Dir()
'Loop
'Geht jede Datei durch und sucht die letzte Zelle mit dem Wort "Erfolg" und verschiebt dann _
_
den Zielbereich um eins nach rechts
For Each wb In Application.Workbooks
If InStr(1, wb.Name, "ZFP") > 0 Then
Set cell = Range("A1:A100").Find("Erfolg", After:=Range("A35"))
Set cell = cell.Offset(0, 1)
' Wenn der Wert in der Zielzelle größer als Null ist, wird der Roboter genutzt
If cell > 0 Then
count = count + 1
Else
On Error Resume Next
End If
End If
Next wb
Application.ScreenUpdating = True
End Sub