Dies ist meine Quelle Folie, die verschiedenen Spalten wie D_ID, Module hat, Funktion_Name usw.importieren mehrere Spalten von einem Blatt zum neuen Blatt
Ich mag würde einige Spalten wie „D_ID exportieren "," Function_Name "," Sub_Unit_Number "," Länge "von ActiveSheet zu neuem Arbeitsblatt.
sollte Mein Ausgangs Arbeitsblatt wie folgt aussehen:
Die Logik, die ich versucht zu verwenden ist zunächst ein neues Arbeitsblatt mit VBA-Code zu erstellen und die dann für eine Schleife durch Bereich gehen zu verwenden (“ A1: K1 "), um herauszufinden, ob jeder Zellenwert in diesem Bereich mit der Zeichenfolge" D_ID "," Function_Name "," Sub_Unit_Number "," length "übereinstimmt. Wenn ja, dann muss ich in ein neues Arbeitsblatt schreiben.
Aber meine Logik wird fehlgeschlagen.
Ich würde wirklich schätzen, wenn mir jemand mit anderer Logik oder Code helfen könnte, damit es funktioniert.
Sub CreateNewSheet()
Dim rep As Integer
Dim sheet_name_to_create As String
sheet_name_to_create = "Test_Sheet"
'a statement to go through other worksheets
For rep = 1 To (Worksheets.Count)
'search the sheet wth the name if that exists
If LCase(Sheets(rep).Name) = LCase(sheet_name_to_create) Then
MsgBox "This sheet already exists"
Exit Sub
End If
Next
Sheets.Add After:=Sheets("Original_Sheet")
Sheets(ActiveSheet.Name).Name = sheet_name_to_create
End Sub
Sub Extract_data()
' this sub routine extracts D_ID, Function_Name, Sub_Unit_Number
'and Length from the Original_Sheet
Dim LastColumn As Integer
Dim cell As Range
Dim sht As Worksheet
Dim data As String
Set sht = Worksheets("Original_Sheet")
LastColumn = sht.Cells(1, .Columns.Count).End(xlToLeft).Column
For Each cell In sht.Range("A1:K" & LastColumn).Cells
data = cell.Value
If data = "D_ID" Then
' I need to import to the new worksheet
ElseIf data = "Function_Name" Then
' I need to import to the new worksheet
ElseIf data = "Sub_Unit_Number" Then
' I need to import to the new worksheet
ElseIf data = "Length" Then
' I need to import to the new worksheet
End If
End Sub
Sub MyNewProcedure()
Call CreateNewSheet
Call Extract_data
End Sub
Reichen Sie den Code ein, den Sie bisher geschrieben haben. – nilsman
@nilsman Ich habe Code hinzugefügt, aber es ist nicht vollständig korrekt, da ich vba jetzt für diese Aufgabe verwende und ich bin nicht vertraut mit Syntax und allem. – user28