Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1916to1920
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro um Daten bereinigen

Makro um Daten bereinigen
30.01.2023 10:38:11
Anna
Hi zusammen!
Ich habe hier einmal folgendes Makro, das eine Übersicht aus Dateien aller Reiter + Hyperlink erstellt, wodurch man schnell auf den jeweiligen Reiter springen kann. Allerdings gibt es sog. Übersichtsreiter, die in dieser Overview nicht auftreten sollen (die heißen z.B. Basics Übersicht), jetzt gerade aber drin sind. Gibt es eine Möglichkeit diese Reiter von der Overview, die sich aus einem Makro erstellt, aussortiert?
Mein Makro sieht momentan so aus:
Sub CommandButton1_Click()
    'Erstellt ein Inhaltsverzeichnis auf alle Tabellen einer
    'Mappe mit Hyperlinks auf die jeweiligen Tabellen
    Dim tarWks As Worksheet
    Dim i As Integer, myRow As Integer, tmpCnt As Integer
    'Blattnamen anpassen
    Set tarWks = Worksheets("Overview")
    'Bestehenden Inhalt l�schen
    tarWks.Columns(1).ClearContents
        'Erstellen des Inhaltsverzeichnisses
         'Vertikal
     For i = 4 To Worksheets.Count
          If Worksheets(i).Visible Then
                      tarWks.Cells(i, 1) = Worksheets(i).Name
                  Cells(i, 1).Hyperlinks.Add Anchor:=Cells(i, 1), Address:="", SubAddress:="'" & Worksheets(i).Name & "'!A1", TextToDisplay:=Worksheets(i).Name
                  tarWks.Cells(i, 2).Value = Worksheets(i).Range("F6").Value
                  tarWks.Cells(i, 3).Value = Worksheets(i).Range("F47").Value
                  tarWks.Cells(i, 4).Value = Worksheets(i).Range("F48").Value
                  tarWks.Cells(i, 5).Value = Worksheets(i).Range("F49").Value
   End If
     Next i
End Sub
Kann man das um die "Basics Übersicht" bereinigen?
Danke im Voraus!
LG,
Anna

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro um Daten bereinigen
30.01.2023 10:55:58
Nepumuk
Hallo Anna,
teste mal:
Private Sub CommandButton1_Click()
    'Erstellt ein Inhaltsverzeichnis auf alle Tabellen einer
    'Mappe mit Hyperlinks auf die jeweiligen Tabellen
    Dim tarWks As Worksheet
    Dim i As Long
    'Blattnamen anpassen
    Set tarWks = Worksheets("Overview")
    'Bestehenden Inhalt l�schen
    tarWks.Columns(1).ClearContents
    'Erstellen des Inhaltsverzeichnisses
    'Vertikal
    For i = 4 To Worksheets.Count
        If Not Worksheets(i).nmae Like "*Übersicht" Then
            If Worksheets(i).Visible Then
                tarWks.Cells(i, 1) = Worksheets(i).Name
                Cells(i, 1).Hyperlinks.Add Anchor:=Cells(i, 1), Address:="", _
                    SubAddress:="'" & Worksheets(i).Name & "'!A1", TextToDisplay:=Worksheets(i).Name
                tarWks.Cells(i, 2).Value = Worksheets(i).Range("F6").Value
                tarWks.Cells(i, 3).Value = Worksheets(i).Range("F47").Value
                tarWks.Cells(i, 4).Value = Worksheets(i).Range("F48").Value
                tarWks.Cells(i, 5).Value = Worksheets(i).Range("F49").Value
            End If
        End If
    Next i
    Set tarWks = Nothing
End Sub
Gruß
Nepumuk
Anzeige
AW: Makro um Daten bereinigen
30.01.2023 11:06:52
Anna
Hey Nepumuk!
Das hat bei einer Bereinigung funktioniert. Wenn ich jetzt aber mehrere Reiter nicht drin haben will, gibt es einen Bug bei den Formeln am Ende:
End If
End If
Next i
Set tarWks = Nothing

End Sub
Was muss ich da eingeben?
LG
Anna
AW: Makro um Daten bereinigen
30.01.2023 11:13:12
Nepumuk
Hallo Anna,
mach das so:
Private Sub CommandButton1_Click()
    'Erstellt ein Inhaltsverzeichnis auf alle Tabellen einer
    'Mappe mit Hyperlinks auf die jeweiligen Tabellen
    Dim tarWks As Worksheet
    Dim i As Long
    'Blattnamen anpassen
    Set tarWks = Worksheets("Overview")
    'Bestehenden Inhalt l�schen
    tarWks.Columns(1).ClearContents
    'Erstellen des Inhaltsverzeichnisses
    'Vertikal
    For i = 4 To Worksheets.Count
        If Not Worksheets(i).Name Like "*Übersicht" And Not Worksheets(i).Name = "Overview" Then
            If Worksheets(i).Visible Then
                tarWks.Cells(i, 1) = Worksheets(i).Name
                Cells(i, 1).Hyperlinks.Add Anchor:=Cells(i, 1), Address:="", _
                    SubAddress:="'" & Worksheets(i).Name & "'!A1", TextToDisplay:=Worksheets(i).Name
                tarWks.Cells(i, 2).Value = Worksheets(i).Range("F6").Value
                tarWks.Cells(i, 3).Value = Worksheets(i).Range("F47").Value
                tarWks.Cells(i, 4).Value = Worksheets(i).Range("F48").Value
                tarWks.Cells(i, 5).Value = Worksheets(i).Range("F49").Value
            End If
        End If
    Next i
    Set tarWks = Nothing
End Sub
Gruß
Nepumuk
Anzeige
AW: Makro um Daten bereinigen
30.01.2023 11:20:42
Anna
Hey,
danke dir. Excel sagt mir dann allerdings, dass es einen Fehler beim Kompilieren gibt: "Next ohne For".
AW: Makro um Daten bereinigen
30.01.2023 11:26:13
Nepumuk
Hallo Anna,
zeig doch mal dein geändertes Makro.
Gruß
Nepumuk
AW: Makro um Daten bereinigen
30.01.2023 11:28:17
Anna
In manchen Dateien gibt es auch noch mehr Reiter, die nicht in der Overview auftreten sollen
Danke Dir vielmals!!
Private Sub CommandButton1_Click()
    'Erstellt ein Inhaltsverzeichnis auf alle Tabellen einer
    'Mappe mit Hyperlinks auf die jeweiligen Tabellen
    Dim tarWks As Worksheet
    Dim i As Long
    'Blattnamen anpassen
    Set tarWks = Worksheets("Overview")
    'Bestehenden Inhalt l�schen
    tarWks.Columns(1).ClearContents
    'Erstellen des Inhaltsverzeichnisses
    'Vertikal
    For i = 4 To Worksheets.Count
        If Not Worksheets(i).Name Like "Produkttypenübersicht" And Not Worksheets(i).Name = "Overview" Then
        If Not Worksheets(i).Name Like "Basics Übersicht" And Not Worksheets(i).Name = "Overview" Then
            If Worksheets(i).Visible Then
                tarWks.Cells(i, 1) = Worksheets(i).Name
                Cells(i, 1).Hyperlinks.Add Anchor:=Cells(i, 1), Address:="", _
                    SubAddress:="'" & Worksheets(i).Name & "'!A1", TextToDisplay:=Worksheets(i).Name
                  tarWks.Cells(i, 2).Value = Worksheets(i).Range("F6").Value
                  tarWks.Cells(i, 3).Value = Worksheets(i).Range("F47").Value
                  tarWks.Cells(i, 4).Value = Worksheets(i).Range("F48").Value
                  tarWks.Cells(i, 5).Value = Worksheets(i).Range("F49").Value
                
            End If
        End If
    Next i
    Set tarWks = Nothing
End Sub

Anzeige
AW: Makro um Daten bereinigen
30.01.2023 11:33:45
Nepumuk
Hallo Anna,
so geht es:
Private Sub CommandButton1_Click()
    'Erstellt ein Inhaltsverzeichnis auf alle Tabellen einer
    'Mappe mit Hyperlinks auf die jeweiligen Tabellen
    Dim tarWks As Worksheet
    Dim i As Long
    'Blattnamen anpassen
    Set tarWks = Worksheets("Overview")
    'Bestehenden Inhalt l�schen
    tarWks.Columns(1).ClearContents
    'Erstellen des Inhaltsverzeichnisses
    'Vertikal
    For i = 4 To Worksheets.Count
    
        If Worksheets(i).Name > "Produkttypenübersicht" And _
           Worksheets(i).Name > "Overview" And _
           Worksheets(i).Name > "Basics Übersicht" Then
           
            If Worksheets(i).Visible Then
                tarWks.Cells(i, 1) = Worksheets(i).Name
                Cells(i, 1).Hyperlinks.Add Anchor:=Cells(i, 1), Address:="", _
                    SubAddress:="'" & Worksheets(i).Name & "'!A1", TextToDisplay:=Worksheets(i).Name
                  tarWks.Cells(i, 2).Value = Worksheets(i).Range("F6").Value
                  tarWks.Cells(i, 3).Value = Worksheets(i).Range("F47").Value
                  tarWks.Cells(i, 4).Value = Worksheets(i).Range("F48").Value
                  tarWks.Cells(i, 5).Value = Worksheets(i).Range("F49").Value
            End If
        End If
    Next i
    Set tarWks = Nothing
End Sub
Gruß
Nepumuk
Anzeige
AW: Makro um Daten bereinigen
30.01.2023 11:41:42
Anna
Es hat funktioniert! Danke dir!!!
AW: Makro um Daten bereinigen
30.01.2023 10:56:33
ChrisL
Hi
Ohne Eleganz, aber dafür hoffentlich verständlich...
If Worksheets(i).Visible Then
' ersatz durch
If Worksheets(i).Visible And Worksheets(i).Name > "Basics Übersicht" And Worksheets(i).Name > "Dummy" Then
cu
Chris
AW: Makro um Daten bereinigen
30.01.2023 10:56:39
onur
Gibt es eine Möglichkeit diese Reiter von der Overview, die sich aus einem Makro erstellt, aussortiert ?
Kann man das um die "Basics Übersicht" bereinigen?

Häääh?

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige