Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Tabellenblätter durchsuchen





Frage

Hallo, ich möchte in einer Datei alle Tabellen nach einem Suchbegriff, den ich auf der Tabelle 1 definiert habe,durchsuchen und den Wert rechts vom Suchbegriff addieren. Danke im voraus. Ciao Camillo

Antwort 1 von Marie

Hallo Camillo,

schau mal hier
http://www.office-loesung.de/ftopic50659_0_0_asc.php

was das heissen soll:
Zitat:
und den Wert rechts vom Suchbegriff addieren.

habe ich nicht verstanden. Kannst Du mal ein beispiel machen?

Gruß Marie

Antwort 2 von Schlauberger

Hallo

Was machst du hier im Forum ,wenn du zur Konkurenz verlinkst,anstand gleich Null

kein Gruss

Schlauberger

Antwort 3 von Marie

Was ist denn das für eine Einstellung? Wir betreiben doch keinen Konkurrenzkampf mit anderen Foren.

Wenn Du jetzt wenigstens eine eigene Antwort gegeben hättest, die dem Camillo helfen würde, dann wäre das ja in Ordnung. Aber hier nur dumm rumposaunen und andere kritisieren, die nach einer Lösung suchen, das hilft niemandem.

Und wer Dir das noch als gute Antwort anklickt, der ist desselben Geistes Kind wie Du.

Antwort 4 von coros

Hallo Camillo,

nachfolgendes Makro addiert Dir alle Werte, die zu dem Suchbegriff in Tabellenblatt "Tabelle1" Zelle A1 gehören. Die gesuchten Werte stehen in Spalte A, die zu addierenden Werte stammen aus der Spalte rechts neben des gefundenen Begriffs.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Suchen_und_berechnen()
Dim strSuch As String
Dim iSheet As Integer
Dim iVergleich As Integer
Dim varSum As Variant
Application.ScreenUpdating = False
strSuch = Range("A1")
For iSheet = 1 To Worksheets.Count
    If Sheets(iSheet).Name <> "Tabelle1" Then
        For iVergleich = 1 To Sheets(iSheet).Range("A65536").End(xlUp).Row
            If strSuch = Sheets(iSheet).Cells(iVergleich, 1) Then
                 varSum = varSum + Sheets(iSheet).Cells(iVergleich, 1).Offset(0, 1)
            End If
        Next
    End If
Next
MsgBox varSum
End Sub


Ich hoffe, Du kommst klar.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 5 von Camillo

Hallo Coros,

dein Makro ist (fast) perfekt :-)).Leider habe ich vergessen zu sagen, dass der ermittelte Wert in Zelle B1 eingetragen werden soll. Mein Fehler :-(. Kannst du mir das bitte auch noch mitteilen?

Danke


Ciao Camillo

Antwort 6 von coros

Hallo Camillo,

nachfolgendes Makro addiert und fügt das Ergebnis in Blatt "Tabelle1" Zelle B1 ein.

Kopiere das Makro wieder in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub Suchen_und_berechnen()
Dim strSuch As String
Dim iSheet As Integer
Dim iVergleich As Integer
Dim varSum As Variant
Application.ScreenUpdating = False
strSuch = Range("A1")
For iSheet = 1 To Worksheets.Count
If Sheets(iSheet).Name <> "Tabelle1" Then
For iVergleich = 1 To Sheets(iSheet).Range("A65536").End(xlUp).Row
If strSuch = Sheets(iSheet).Cells(iVergleich, 1) Then
varSum = varSum + Sheets(iSheet).Cells(iVergleich, 1).Offset(0, 1)
End If
Next
End If
Next
Sheets("Tabelle1").Range("B1") = varSum
End Sub



MfG,
Oliver
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du
ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.