Thema Datum  Von Nutzer Rating
Antwort
23.04.2018 11:35:12 James
Solved
23.04.2018 12:05:40 Gast68373
NotSolved
Rot Suchfunktion auf mehrere Tabellenblätter anwenden
23.04.2018 12:28:07 Werner
NotSolved
23.04.2018 14:05:39 Gast16837
NotSolved

Ansicht des Beitrags:
Von:
Werner
Datum:
23.04.2018 12:28:07
Views:
473
Rating: Antwort:
  Ja
Thema:
Suchfunktion auf mehrere Tabellenblätter anwenden

Hallo James,

ich gehe mal davon aus, dass du deine ganzen Variablen auch "Dim"-ensioniert hast.

Public Sub aaa()
Dim ws As Worksheet,

Application.ScreenUpdating = False

For Each ws In ThisWorkbook.Sheets
    Select Case ws.Name
        Case "EBewertung", "Risikoauswertung"
            With ws
                lLetzte = .Cells(.Rows.Count, 7).End(xlUp).Row
                    For lZeile = 1 To 6
                        .Columns("G").Insert Shift:=xlToRight
                    Next lZeile
                .Columns("G:L").NumberFormat = "@"
                .Range("G2:L" & lLetzte) = 0
                    For lZeile = 1 To lLetzte
                        aTemp = Split(.Cells(lZeile, 13), ".") ' die 'alte' Spalte G ist jetzt M
                            For iIndx = 0 To UBound(aTemp)
                                If IsNumeric(aTemp(iIndx)) And Len(aTemp(iIndx)) < 2 Then
                                    .Cells(lZeile, 7 + iIndx) = "00" & aTemp(iIndx)
                                ElseIf Len(aTemp(iIndx)) < 3 Then
                                    .Cells(lZeile, 7 + iIndx) = "0" & aTemp(iIndx)
                                Else
                                    .Cells(lZeile, 7 + iIndx) = aTemp(iIndx)
                                End If
                            Next iIndx
                    Next lZeile
                ' erstmal nach den Spalten J - L sortieren
                .Range("G2:Z" & lLetzte).Sort Key1:=.Range("J2"), Order1:=xlAscending, _
                Key2:=.Range("K2"), Order2:=xlAscending, Key3:=.Range("L2"), Order3:=xlAscending, _
                Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
                ' dann nach den Spalten G - I sortieren
                .Range("G2:Z" & lLetzte).Sort Key1:=.Range("G2"), Order1:=xlAscending, _
                Key2:=.Range("H2"), Order2:=xlAscending, Key3:=.Range("I2"), Order3:=xlAscending, _
                Header:=xlNo, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
                ' dann die eingefügten Spalten löschen
                .Columns("G:L").Delete Shift:=xlToLeft
            End With
        Case Else
    End Select
Next ws

Application.ScreenUpdating = True
End Sub

 

Gruß Werner


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
23.04.2018 11:35:12 James
Solved
23.04.2018 12:05:40 Gast68373
NotSolved
Rot Suchfunktion auf mehrere Tabellenblätter anwenden
23.04.2018 12:28:07 Werner
NotSolved
23.04.2018 14:05:39 Gast16837
NotSolved