Ankündigung

Einklappen
Keine Ankündigung bisher.

Excel Hilfe needed (Tabellen abgleichen)

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Excel Hilfe needed (Tabellen abgleichen)

    So Freunde, Excel überfordert mich mal wieder


    Folgendes:

    Monatlich wird eine neue Tabelle erstellt in der alle TK Anlagen verzeichnet sind.
    Nun soll die neue Tabelle mit der vom Vormonat abgeglichen werden und Unterschiede farblich markiert werden, damit man schnell sieht, was sich geändert hat.
    Ich dachte erst das is leicht über ne Bedingte Formatierung zu machen, in dem man über ne Formel alle markiert, die zwar in Tab1 sind aber nicht in Tab2. Hab leider keine Formel zustande gebracht, die das ganze tut.

    Die TAbellen sehen so aus:

    Spalten sind immer gleich, von A1 bis S1.
    Darunter dann die Anlagen, ca 1500. Also Von A2 bis S1500 sind Werte. Diese Werte können sich alle unabhängig voneinander in den neuen Versionen ändern.

    Hat da jemand ne Idee wie ich das anstelle?

    #2
    Also willst du Zelle gegen Zelle prüfen?

    D.h. wenn sich z.B. M502 ändert, dann soll diese markiert werden?
    Ist denn sichergestellt, dass nicht geänderte Werte immer in der gleichen Zelle stehen?

    Kommentar


      #3
      Zitat von slayer
      Also willst du Zelle gegen Zelle prüfen?

      D.h. wenn sich z.B. M502 ändert, dann soll diese markiert werden?
      Ist denn sichergestellt, dass nicht geänderte Werte immer in der gleichen Zelle stehen?
      Richtig, wenn M502 irgendwie abgeändert wird soll markiert werden.
      Das ist soweit ich weiß nicht sichergestellt. Kann nämlich vorkommen das ne komplette Anlage gelöscht wird und damit alle darunterliegenden eine Zeile nach oben gerückt werden. (Die anlagen sind von 0001 bis 0200 durchnummeriert, gibt aber obv manche nicht, kann zb sein das es 0150 nicht gibt)

      Kommentar


        #4
        schonmal probiert mit einfach wenn a1s1 dann ....

        Kommentar


          #5
          Zitat von Bara
          schonmal probiert mit einfach wenn a1s1 dann ....
          Hab ich tatsächlich probiert. Hat leider nicht wirklich funktioniert. Bei Mir sahs aber so aus, vl war die Formel falsch:

          =A1Tabelle2!A1“

          Konnte leider mit dem Zeichen nix anfangen, die Formel stammt ausm Internet. Tabelle 1 ist übrigens die neue Version, in Tabelle 2 ist die vom Vormonat. Die Markierung soll in Tabelle 1 erfolgen

          Kommentar


            #6
            Die Lösung über 2 Excel Dateien hab ich mir bereits abgeschminkt also aktuell geht's eh drum das ganze über 2 Tabellenblätter laufen zu lassen. Werde das Makro mal probieren

            Kommentar


              #7
              Zitat von QTPie
              Zitat von slayer
              Also willst du Zelle gegen Zelle prüfen?

              D.h. wenn sich z.B. M502 ändert, dann soll diese markiert werden?
              Ist denn sichergestellt, dass nicht geänderte Werte immer in der gleichen Zelle stehen?
              Das ist soweit ich weiß nicht sichergestellt. Kann nämlich vorkommen das ne komplette Anlage gelöscht wird und damit alle darunterliegenden eine Zeile nach oben gerückt werden. (Die anlagen sind von 0001 bis 0200 durchnummeriert, gibt aber obv manche nicht, kann zb sein das es 0150 nicht gibt)
              Das ist halt problematisch. Mit "normalen" Excellösungen (Formeln) geht das imo nicht. Muss man über Makros regeln, denke ich. Aber ich überleg mal, obs nicht doch mit Formel geht, bin mit Makros nicht mehr bewandert.

              Ist die Anlagennummer immer in Spalte A und einzigartig?

              Kommentar


                #8
                Zitat von slayer
                Zitat von QTPie
                Zitat von slayer
                Also willst du Zelle gegen Zelle prüfen?

                D.h. wenn sich z.B. M502 ändert, dann soll diese markiert werden?
                Ist denn sichergestellt, dass nicht geänderte Werte immer in der gleichen Zelle stehen?
                Das ist soweit ich weiß nicht sichergestellt. Kann nämlich vorkommen das ne komplette Anlage gelöscht wird und damit alle darunterliegenden eine Zeile nach oben gerückt werden. (Die anlagen sind von 0001 bis 0200 durchnummeriert, gibt aber obv manche nicht, kann zb sein das es 0150 nicht gibt)
                Das ist halt problematisch. Mit "normalen" Excellösungen (Formeln) geht das imo nicht. Muss man über Makros regeln, denke ich. Aber ich überleg mal, obs nicht doch mit Formel geht, bin mit Makros nicht mehr bewandert.

                Ist die Anlagennummer immer in Spalte A und einzigartig?
                Immer in Spalte 1 ja, einzigartig leider nein. Ist zumindest nicht garantiert.
                Spalten sind immer gleich und festgelegt, nur die Zeilen ändern sich
                Kämpfe grade noch mit dem VB Makro :D

                Kommentar


                  #9
                  Wenn die Zeilen halt gleich bleiben, kannst du einfach =WENN(A1Tabelle2!A1;1;0) machen und dann bedingte Formatierung drauf. Wenn eine Zeile gelöscht wird oder hinzukommt, ist es natürlich blöd.

                  Ein einfaches VBA-Makro wird dir da nicht viel helfen, mMn. Denn was soll das Makro machen, wenn in einer Tabelle mittendrin etwas fehlt? Ohne eine einzigartige Spalte ist da net viel zu machen. Wenn du eine einzigartige hättest, würde es btw auch mit Boardmitteln und ohne VBA gehen, Stichwort VERWEIS.

                  Eventuell kannst du mal Spreadsheet Compare testen. Gibt auch noch andere Software, die so etwas kann.

                  Kommentar


                    #10
                    Das ist der Punkt, ohne Index-Spalte hast du kaum eine Möglichkeit zu vergleichen.

                    Kommentar


                      #11
                      Also mit =WENN(A1Tabelle1!A1;1;0) markiert er mir in meiner Testtabelle gar nichts außer lustigerweise die letzte Zeile, die ich zu testzwecken hinzugefügt hab. Zwischendrin ist auch was verändert und er markierts nicht.

                      Und das VBA Makro gibt mir nur nen Fehler aus (fehler beim Kompilieren, Außerhalb einer Prozedur ungültig und er markiert die 1 bei Sheets (1)

                      DH, solange es keine Spalte gibt die durchnummeriert und nicht gelöscht wird ist das was ich will nicht möglich?

                      Kommentar


                        #12
                        Zitat von QTPie
                        Also mit =WENN(A1Tabelle1!A1;1;0) markiert er mir in meiner Testtabelle gar nichts außer lustigerweise die letzte Zeile, die ich zu testzwecken hinzugefügt hab. Zwischendrin ist auch was verändert und er markierts nicht.
                        Liegt an dir, funktioniert bei mir einwandfrei. Musst natürlich den Code auf deine Mappe anpassen.

                        Zitat von QTPie
                        Und das VBA Makro gibt mir nur nen Fehler aus (fehler beim Kompilieren, Außerhalb einer Prozedur ungültig und er markiert die 1 bei Sheets (1)
                        Was soll man da nun sagen? Der Code enthält halt Fehler ^^ Aber ich bezweifel, dass du in so einer kurzen Zeit mit wenig/keiner VBA-Erfahrung da etwas hinbekommst.

                        Kommentar


                          #13
                          Ist ja auch egal, weil das Makro absolut nix bringt, wenn Zeilen ggf. gelöscht werden.

                          Kommentar


                            #14
                            Zitat von ali.
                            Sub Vergleich()
                            Dim i As Integer
                            Dim j As Integer
                            Sheets(1).Activate
                            AnzZeilen = ActiveSheet.UsedRange.Rows.Count

                            For j = 1 To 19
                            For i = 2 To AnzZeilen
                            If Not Sheets(1).Cells(i, j) = Sheets(2).Cells(i, j) Then
                            Sheets(2).Cells(i, j).Interior.ColorIndex = 3
                            End If
                            Next
                            Next
                            End Sub

                            funktioniert bei mir einwandfrei, wobei readmore auf dem rechner an der uni wirklich ein pest ist. sorry aber bei soviel werbung bin ich raus

                            wenn sich werte ändern, einfach alles wieder weiß markieren und das makro neu laufen lassen... wo ist das problem?
                            Wenn der zu vergleichende Wert im Vormonat in Zeile 5 und im nächsten Monat in Zeile 4 steht (Weil Zeile 3 gelöscht wurde) dann kannst du da nix vergleichen. Dein Makro würde dann alles ab Zeile 3 einfärben, was bei 1500 Zeilen (so hab ich OP verstanden) eher wenig hilfreich ist.

                            Kommentar


                              #15
                              Zitat von ali.
                              Sub Vergleich()
                              Dim i As Integer
                              Dim j As Integer
                              Sheets(1).Activate
                              AnzZeilen = ActiveSheet.UsedRange.Rows.Count

                              For j = 1 To 19
                              For i = 2 To AnzZeilen
                              If Not Sheets(1).Cells(i, j) = Sheets(2).Cells(i, j) Then
                              Sheets(2).Cells(i, j).Interior.ColorIndex = 3
                              End If
                              Next
                              Next
                              End Sub

                              funktioniert bei mir einwandfrei, wobei readmore auf dem rechner an der uni wirklich ein pest ist. sorry aber bei soviel werbung bin ich raus

                              wenn sich werte ändern, einfach alles wieder weiß markieren und das makro neu laufen lassen... wo ist das problem?
                              wenn ich das richtig verstanden habe, dann kann es passieren, dass zu vergleichende anlagen nicht zwangsläufig in der gleichen zeile stehen. damit ist dein vorgehen sinnlos.

                              frage:
                              wenn die anlagennummern nicht einzigartig sind, welches merkmal ist es dann? irgendwas muss es ja geben, was die einträge deutlich kennzeichnet um mehrfacheinträge zu vermeiden

                              Kommentar

                              Lädt...
                              X