Ankündigung

Einklappen
Keine Ankündigung bisher.

quick excel hilfe

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

    quick excel hilfe

    hab 2 dateien, bzw. 2 tabellen mit nummern

    in datei 1 stehen alle nummern aus datei 2 + zusätzliche nummern

    wie filtere ich die zusätzlichen nummern in datei 1 heraus, die nicht in datei 2 stehen?

    edit: nummern stehen in der selben spalte, geht wirklich um nen "simplen" spaltenvergleich

    die nummern sind wild durcheinander, möchte quasi prüfen ob eine zahl in spalte 1 in blatt 1 auch in spalte 1 in blatt 2 existiert

    #2
    A ist Spalte aus Datei 1, B ist Spalte aus Datei 2:

    Dann schreibst du in C1 folgendes: =WENN(ISTFEHLER(VERGLEICH(B1;$A$1:$A$6;0));B1;"")

    Das ziehst du runter bis zum Ende der Spalte B. $A$6 musst du noch anpassen, je nachdem wie lang die Liste in Spalte A ist.

    Kommentar


      #3
      danke, funktioniert so.

      hatte es selber aber dann doch noch hinbekommen, in dem ich alles in 1 tabelle gehauen hab und über daten->duplikate entfernen hab aussortieren lassen. dabei bleibt die reihenfolge der liste ja erhalten, ich hab mir also markiert nachdem ich die kürze liste eingefügt habe, wo diese endet. alles was dann nach dem aussortieren darunter gelistet wurde musste obv neu/zusätzlich sein.

      Danke :)

      Kommentar


        #4
        Hey!

        Ich poste auch einfach mal hier mein Problem.

        Bei uns gibt es zwei Kostenträgern mit unterschiedlichen Kostenstellen (in der Grafik ist nur ein kleiner Auszug).


        Ziel ist es, wenn in Zelle B1 die 2010 steht auch nur die Kostenstellen in Spalte E aufgelistet werden die zum Kostenträger 2010 gehören. In diesem Fall wäre nach der 201100207 schluss.

        Wenn ich die 2020 dort eintrage geht es in Spalte E zum Beispiel mit der kleinsten Kostenstelle vom Kostenträger 2020 los.

        Vielleicht habe ich gerade auch einfach ein Brett vor dem Kopf.

        Vielen Dank schon mal für eure Hilfe.

        Gruß Rowlen

        Kommentar


          #5
          Nimm die Excelfunktion Filtern.

          Spalte markieren, Filtern, Fertig.

          Kommentar


            #6
            Danke erst mal für die Rückmeldung, nur leider bringt mich ein Filter nicht weiter.
            Für das Konstrukt der gesamten Tabelle und der Datenquelle wäre eine Formel notwendig.

            Kommentar


              #7
              Ein Formel gibt es nicht, wenn dann mit VBA Zellen ausblenden. Oder du nimmst eine Formel und hast dann massenweise leere Zeilen zwischen den gefüllten.

              Kommentar


                #8
                hier die tabelle (hab zu testzwecken mal ne nummer mit 201 zusätzlich eingefügt), code für spalte D siehe eingabezeile:


                hier der zugehörige vba-code (quicksort ausm internet copy&paste und an das zweidimensionale array angepasst, rest is easy):


                spalte d als "hilfsspalte" müsstest du dann einfach ausblenden bzw breite auf 0 setzen.
                bei klick auf den button (cmd1) füllt er dir spalte E mit den sortierten werten, führt allerdings doppelte werte auf.
                da müsstest du dich selber dran machen das zu beheben.
                man kann die range des arrays über rowcount auch variabel halten, war ich aber grad zu faul zu, müsstest du dann schnell googlen.

                QuickSort:
                [spoiler]Public Sub QuickSort(vArray As Variant, inLow As Long, inHi As Long)

                Dim pivot As Variant
                Dim tmpSwap As Variant
                Dim tmpLow As Long
                Dim tmpHi As Long

                tmpLow = inLow
                tmpHi = inHi

                pivot = vArray((inLow + inHi) \ 2, 1)

                While (tmpLow inLow)
                tmpHi = tmpHi - 1
                Wend

                If (tmpLow

                Kommentar


                  #9
                  Nur beziehst du gar nicht B1 in dein Makro mit ein ;) Zudem ist es unflexibel, wenn neue Einträge dazu kommen.

                  Hier mal mein VBA Code. Ist flexibel und wird automatisch ausgeführt, wenn du B1 änderst. Er sucht sich die passenden Werte raus und sortiert sie am Ende.

                  Spoiler: 
                  Private Sub Worksheet_Change(ByVal Target As Range)
                  If Target.Address = "$B$1" Then
                  Application.ScreenUpdating = False
                  ActiveSheet.Range("D4:D" & ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row).ClearContents

                  Dim kostentraeger As String, iZaehler As Integer
                  kostentraeger = ActiveSheet.Range("B1").Value
                  iZaehler = 4

                  For i = 4 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
                  If ActiveSheet.Range("B" & i).Value = kostentraeger Then
                  ActiveSheet.Range("D" & iZaehler).Value = ActiveSheet.Range("A" & i).Value
                  iZaehler = iZaehler + 1
                  End If
                  Next i

                  If iZaehler > 5 Then
                  ActiveSheet.Range("D4:D" & ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row).Select
                  ActiveSheet.Sort.SortFields.Add Key:=Range("D4"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
                  ActiveSheet.Sort.Apply
                  End If

                  ActiveSheet.Range("B1").Select
                  Application.ScreenUpdating = True
                  End If
                  End Sub


                  Das ganze muss dann in den das VBA Fensters des Worksheets.

                  Kommentar


                    #10
                    naja B1 wird durch die spalte D mit einbezogen. die flexibilität käme wie gesagt über rowcount. hab mir nur schnell n quicksort ausm netz gezogen und dann eben das array eingelesen.
                    deins ist aber mit sicherheit die "fertigere" version ^^

                    Kommentar


                      #11
                      Zitat von stickay
                      naja B1 wird durch die spalte D mit einbezogen.
                      Ups, übersehen ;)

                      Frage mich, warum man für Sort (in diesem Fall) eine eigene Funktion macht. Kann doch das Excel-Sort genauso Oo

                      Kommentar


                        #12
                        weils bei mir nicht funktioniert hat.
                        und auch dein code funktioniert bei mir nicht, gibt bei mir folgende liste aus:

                        Kommentar


                          #13

                          Kommentar


                            #14
                            Danke euch! Ich werd es morgen mal auf der Arbeit entsprechend editieren.
                            Mal gucken was Chefin zur Lösung mit VBA sagt, eigentlich will sie es nicht :/

                            Kommentar


                              #15
                              gebrauche diesen thread mal:

                              Zitat von krawall
                              wie kann ich bei excel die tabellenlinien fett machen sodass ich sie auch sehe wenn ich sie in eine word datei kopiere?

                              Kommentar

                              Lädt...
                              X