Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
520to524
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
520to524
520to524
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nr. suchen und zugehörigen Wert summieren - VBA

Nr. suchen und zugehörigen Wert summieren - VBA
25.11.2004 09:09:23
anna
Hallo Leute !
Habe mein Problem schon mal beschrieben und zwar folgendes:
Habe eine Arbeitsmappe mit mehr als 100 sheets.
Ich möchte nun eine Nummer eingeben nach der im jeden sheet gesucht werden soll, diese Nummer kommt nur einmal je sheet vor.
Sobald die Nummer gefunden wurde soll die Zahl die rechts daneben steht summiert (es kann sein das dort keine Zahl steht!!" )werden und zum Schluß soll mir die Summe angezeigt werden.
Habe folgenden Vorschlag von u_ bekommen:

Sub Summe()
Dim sh As Worksheet, sngSum As Single, rngFind As Range, strSuchen As String
strSuchen = InputBox("Nummer?")
If strSuchen = "" Then Exit Sub
For Each sh In Worksheets
Set rngFind =Nothing
Set rngFind = sh.Cells.Find(strSuchen, Cells(1, 1))
If Not rngFind Is Nothing Then sngSum = sngSum + rngFind.Offset(0, 1)
Next sh
MsgBox sngSum
End Sub

Wenn ich diese Makro ausführe bekomme ich hin und wieder die Fehlermeldung ´13.
und folgende Zeile wird makiert:
If Not rngFind Is Nothing Then sngSum = sngSum + rngFind.Offset(0, 1)
Wo kann der Fehler liegen? Vielleicht, weil manchmal in der Spalte recht neben dem gefundenen Wert nicht steht?
Hoffe Ihr könnt mir helfen!!
Gruß
anna

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nr. suchen und zugehörigen Wert summieren - VBA
25.11.2004 09:52:41
Roland
Hallo anna,
der Code ist ok. Den Laufzeitfehler 13 bekommst du, wenn du versuchst, Zahl und Text zu addieren. Prüfe doch einfach mal deine Tabellen, ob eine der zu addierenden Zellen zwar als Zahl erscheint, jedoch als Text formatiert wurde (die vermeintliche "Zahl" erscheint dann linksbündig).
Gruß Roland
AW: Nr. suchen und zugehörigen Wert summieren - VBA
WernerB.
Hallo Anna,
wie gefällt Dir das?

Sub Summe()
Dim sh As Worksheet
Dim rngFind As Range
Dim strSuchen As String
Dim sngSum As Single
strSuchen = InputBox("Nummer?")
If strSuchen = "" Then Exit Sub
For Each sh In Worksheets
Set rngFind = sh.Cells.Find(strSuchen, Cells(1, 1))
If Not rngFind Is Nothing Then
If IsNumeric(rngFind.Offset(0, 1).Value) Then
sngSum = sngSum + rngFind.Offset(0, 1).Value
End If
Set rngFind = Nothing
End If
Next sh
MsgBox sngSum
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Anzeige
Super, es klappt!! wo lag der Fehler?
25.11.2004 10:23:48
anna
Hallo Werner!
Das klappt wunderbar. Wo lag der Fehler ?
Gruß
Anna
AW: Super, es klappt!! wo lag der Fehler?
WernerB.
Hallo Anna,
der Fehler lag wie so oft einmal mehr nicht im Makro, sondern in der Problembeschreibung, die der Erstellung des Makros vorausging.
Dort hast Du verschwiegen, dass in der Zelle "rechts daneben" auch Text stehen kann.
Der Programmierer ist somit wohl davon ausgegangen, dass in der Zelle "rechts daneben" immer Zahlen stehen.
Excel bzw. VBA kann auch nur Zahlen addieren und nicht Zahlen und Texte.
Wenn z.B. 17 und "Paul" addiert werden sollen, dann kommt es eben zur Fehlermeldung.
In das Programm habe ich nun eine Kontrollfunktion eingebaut, die überprüft, ob der Inhalt der Zelle "rechts daneben" numerisch ist; nur dann wird auch addiert.
Gruß
WernerB.
Anzeige
Danke für Deine Antwort! :-)
25.11.2004 11:31:16
anna
.

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige