thisworkbook zu activeworkbook
13.07.2016 11:20:50
Constantin
Nepumuk hat mir dieses Macro geschrieben, ich bin erst vor ein paar Tagen dazu gekommen und es zu testen, leider konnte ich den Beitrag nicht mehr kommentieren und mich bedanken.
Funktioniert Super! Vielen Dank Nepumuk.
Ich hab jetzt nur noch eine Problem das ich nicht versteh kenne mich leider einfach nicht so super aus.
Ich möchte gerne den Code von meiner personal.xlxs auf das Aktuell geöffnete workbook ausführen. Ich schaf es einfach nicht bin zu blöd.
Hat jemand eine Idee ?
Der Code:
Option Explicit
Public Sub Delete_NO()
Dim objWorkbook As Workbook, objWorksheet As Worksheet
Dim objCell As Range
Dim lngRow As Long
Dim blnFound As Boolean
'Bildeschirmaktualisierung ausschalten
Application.ScreenUpdating = False
'Suche nach Mappe Itemnumber
For Each objWorkbook In Workbooks
If objWorkbook.Name = "Itemnumber.xlsx" Then
blnFound = True
Exit For
End If
Next
'Wenn die Mappe nicht gefunden wurde öffnen
If Not blnFound Then Set objWorkbook = Workbooks.Open( _
Filename:=ThisWorkbook.Path & "\Itemnumber.xlsx")
'Verweis auf die Tabelle setzen
Set objWorksheet = objWorkbook.Worksheets("Quiltlines (2ND)")
With ThisWorkbook.Worksheets("Inventory table (2ND)")
'Schleife über alle Zeilen in Spalte E von unten nach oben
For lngRow = .Cells(.Rows.Count, 5).End(xlUp).Row To 2 Step -1
'Wenn in der Zelle eine No steht
If .Cells(lngRow, 5).Value = "No" Then
'Suche in Mappe Itemnumber nach der Nummer
Set objCell = objWorksheet.Columns(2).Find( _
What:=.Cells(lngRow, 1).Value, LookIn:=xlValues, LookAt:=xlWhole)
'Wenn die Nummer nicht gefunden wurde
If objCell Is Nothing Then
'Lösche die Zeile
Call .Rows(lngRow).Delete
'Objekt zurücksetzen
Set objCell = Nothing
End If
End If
Next
End With
'Wenn die Mappe Itemnumber automatisch geöffnet wurde diese wieder schließen
If Not blnFound Then Call objWorkbook.Close(SaveChanges:=False)
'Objkete zurücksetzen
Set objWorkbook = Nothing
Set objWorksheet = Nothing
'Bildeschirmaktualisierung einschalten
Application.ScreenUpdating = True
End Sub
Vielen Dank