Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

MsgBox

Forumthread: MsgBox

MsgBox
07.03.2008 12:44:34
Manfred
Hallo zusammen,
benötige etwas Hilfe,
ich benötige nach dem finden von doppelten Werten eine MsgBox die sagt >doppelte Werte gefunden

Sub Pnr_vergleichen_doppelte_faerben()
Dim xx As Worksheet, yy As Worksheet
Dim i As Long, j As Long
Set xx = Worksheets("Auswertung")
Set yy = Worksheets("8er_Feld")
For i = 2 To 500
If xx.Cells(i, 2)  "" Then
For j = 2 To 500
If xx.Cells(i, 2) = yy.Cells(j, 2) Then
'       Farbe in die Zellen Tab1 SpB
yy.Activate
yy.Range(yy.Cells(j, 2), yy.Cells(j, 2)).Interior.ColorIndex = 4 'grün
End If
Next
End If
Next
End Sub


Mit freundlichen Grüßen
Manfred

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MsgBox
07.03.2008 13:25:36
Holger
Hallo Manfred
dein Vergleich betrifft offenbar xx.Cells(i, 2) und yy.Cells(j, 2). Dann ändere in
If xx.Cells(i, 2) = yy.Cells(j, 2) Then
' Farbe in die Zellen Tab1 SpB
yy.Activate
yy.Range(yy.Cells(j, 2), yy.Cells(j, 2)).Interior.ColorIndex = 4 'grün
MsgBox ("Doppelte Werte gefunden")
Exit Sub
End If
Gruß
Holger

Anzeige
AW: MsgBox
07.03.2008 13:26:05
volti
Hallo Manfred,
vielleicht gefällt Dir dieser Ansatz.

Sub Pnr_vergleichen_doppelte_faerben()
Dim xx As Worksheet, yy As Worksheet
Dim i As Long, j As Long
Set xx = Worksheets("Auswertung")
Set yy = Worksheets("8er_Feld")
For i = 2 To 500
If xx.Cells(i, 2)  "" Then
For j = 2 To 500
If xx.Cells(i, 2) = yy.Cells(j, 2) Then
'       Farbe in die Zellen Tab1 SpB
yy.Activate
yy.Range(yy.Cells(j, 2), yy.Cells(j, 2)).Interior.ColorIndex = 4 'grün
Ergebnis = MsgBox("Der Wert " & xx.Cells(i, 2) & " ist doppelt vorhanden!" &  _
vbCr & "Möchten Sie das Makro abbrechen?", vbYesNo, "Mein Makro")
If Ergebnis = vbYes Then Exit Sub
End If
Next
End If
Next
End Sub


viele Grüße
Karl-Heinz

Anzeige
AW: MsgBox
07.03.2008 13:26:29
Beverly
Hi Manfred,

Sub Pnr_vergleichen_doppelte_faerben()
Dim xx As Worksheet, yy As Worksheet
Dim i As Long, j As Long
Dim boZustand As Boolean
Set xx = Worksheets("Auswertung")
Set yy = Worksheets("8er_Feld")
For i = 2 To 500
If xx.Cells(i, 2)  "" Then
For j = 2 To 500
If xx.Cells(i, 2) = yy.Cells(j, 2) Then
boZustand = True
'       Farbe in die Zellen Tab1 SpB
'                   yy.Activate
yy.Range(yy.Cells(j, 2), yy.Cells(j, 2)).Interior.ColorIndex = 4 'grün
End If
Next
End If
Next
If boZustand = True Then MsgBox "doppelte vorhanden"
End Sub


In VBA kann zu 99% auf Select und Activate verzichtet werden.



Anzeige
AW: MsgBox
10.03.2008 09:11:00
Manfred
Hallo Zusammen,
vielen Dank für die Antworten, es funzen alle Vorschläge, habe mich für den von Beverly entschieden.
Nochmals Danke vor die Mühe an alle.
Mit freundlichen Grüßen
Manfred
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige