Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

MsgBox bei zwei Erste Plätze





Frage

Hallo, ich mal wieder der Unwissende!!! Ich brauch mal wieder Eure Hilfe!! Ich habe in Tabelle1 eine Tabelle, wo in Spalte A der rang vergeben wird (mit Formel Rang) und in Spalte B die Namen. In Tabelle2 soll dann die Person stehen die auf Rang 1 ist mit Rang und Namen. Da es möglich ist das der Rang Eins mehrmals vergeben werden kann, dass in der Tabelle2 eine MsgBox erscheint, wenn es mehrmals Rang Eins gibt. Die Msgbox soll nur erscheinen und Meldung machen z.B. mehrere Plätze 1 vorhanden oder so. Ich Danke für Eure Hilfe!!!! MfG Elhamplo

Antwort 1 von coros

Hi Elhamplo,

also so ganz verstehe ich nicht, was Du erreichen möchtest, bzw. wie. Bei welchem Zustand soll denn die Messagebox erscheinen? Klar, wenn mehr als einmal der Rang 1 vorkommt, aber bei welcher Aktion. Wenn man das Blatt "Tabelle2" öffnet, wenn man einen Button anklickt, wenn irgendwo etwas geschrieben wird oder ,oder, oder? Du müsstest Dich schon etwas klarer Ausdrücken.

MfG,
coros
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 2 von Elhamplo

Hi Coros,

Die MsgBox soll erscheinen wenn man das Blatt "Tabelle2" öffnet, dann soll gemeldet werden das es mehrere auf Rang 1 sind.

Danke für Deine Mühe!!!!!!!!!

Gruß

Elhamplo

Antwort 3 von Saarbauer

Hallo,

ich hatte das Problem auch bei einer Tabelle

https://supportnet.de/threads/1090837

sieh mal diese Lösung

Gruß

Helmut

Antwort 4 von coros

Hi´,

entweder Du nimmst die Lösung von @Saarbauer, oder Du kopierst nachfolgenden Code in daqs VBA Projekt Deiner Tabelle2.

Option Explicit
Private Sub Worksheet_Activate()
Dim Wiederholungen As Long, Zähler As Long
For Wiederholungen = 1 To Range("A65536").End(xlUp).Row
If Cells(Wiederholungen, 1) = 1 Then
Zähler = Zähler + 1
End If
Next
If Zähler > 1 Then MsgBox "Es sind mehrere 1. Plätze vorhanden!", vbInformation, "Meldung"
End Sub


Da Du etwas spärlich mit Deinen Infos umgehst, habe ich mal angenommen, dass in Blatt "Tabelle2" die Ränge in Spalte A stehen. Wenn dem nicht so ist, dann musst Du in der Zeile

For Wiederholungen = 1 To Range("A65536").End(xlUp).Row

die Zellebezeichnung abändern. Trage dort den Spaltenbuchstaben ein, in dem sich die Ränge befinden. Auch musst Du dann in der Zeile

If Cells(Wiederholungen, 1) = 1 Then

die Spaltenindexnummer (die Zahl in der Klammer hinter dem Komma) ändern. Die 1 steht hier für Spalte A, eine 2 würde für Spalte B stehen, eine 3 für C, eine 4 für D usw.

Ich hoffe, Du kannst damit etwas anfangen.

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 2 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

MfG,
coros
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 Elhamplo

Hi Coros,

Sorry, wie mache ich das wenn meine Tabellen anders genannt habe nicht "Tabelle1" und "Tabelle2".

Die Tabelle wo der Rang steht heiß auch "Rang" und und die Tabelle2 heißt bei mir "Ergebnis". Ich hab auch noch mehr Tabellen in der Arbeitsmappe die aber nichts mit dem Rang und so zu tun haben. Was muss ich noch einfügen???

Ich danke für Deine Hilfe!!!

Gruß

Elhamplo

Antwort 6 von Elhamplo

Hey Saarbauer,

Danke für den Tipp, aber es ist garnicht so schlecht wenn ich erfahren kann ob da mehrere auf Platz 1 stehen.

Danke

MfG

Elhamplo

Antwort 7 von coros

Hi Elhamplo,

wie die Blätter heißen ist völlig wurscht. Kopiere den Code in das VBA Projekt des Blattes, bei dem er beim Öffnen Dir anzeigen soll, dass es mehrere 1. Plätze gibt wenn vorhanden.

MfG,
coros
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 8 von Elhamplo

Hi Coros,

es tut mir Leid!! Ich glaub ich bin für VBA nicht geboren.

Ich hab den Code ausprobiert und er funst. Super!!! Ich möchte aber, das die Meldung nicht in der Tabelle erscheint wo der Rang vergeben wird, sondern in der Tabelle wo der Name des Spieler steht in "Tabelle2". In "Tabelle2" steht dann der Name Peter Müller auf Platz 1 und da soll dann die Meldung beim öffnen der "Tabelle2" kommen das es mehrere auf Platz 1 gibt.

Gruß

Elhamplo

Antwort 9 von coros

Hi Elhamplo,

das habe ich Dir bereits in Antwort 4 geschrieben. Der VBA Code gehört in das VBA Projekt des Tabellenblattes mit dem Namen "Tabelle2". Wo Du das findest, wie Du den da hinein bekommst habe ich Dir ebenfalls in Antwort 4 geschrieben. Das solltest du Dir, mal anschauen und dann wirst Du das auch hinbekommen.

Wenn nicht, dann melde Dich noch mal.

MfG,
coros
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 10 von Elhamplo

Hi Coros,

ahh!!! jetzt hats gefunkt! hab geschnallt wie das mit dem Code funst. Danke.


Ich hoffe ich tapp jetzt nicht im Dunkeln. Noch mal eine Frage: In "Tabelle2" steht nur der Name und keine Rangzahl. Die Rangzahl steht nur in "Tabelle1". Wie mache ich das denn dann das die Meldung erscheint?? SORRY!!!!

MfG

Elhamplo

Antwort 11 von coros

Hi Elhamplo,

das war aber bei Deiner ersten Frage noch ganz anders oder irre ich da. Dann muss man halt die Zellen in Tabellenblatt „Rang“ vergleichen. Kopiere nachfolgenden Code in das Blatt „Ergebnis“. Ich hoffe, die Blattnamen sind noch so wie in Antwort 5 von Dir aufgeführt.

Option Explicit
Private Sub Worksheet_Activate()
Dim Wiederholungen As Long, Zähler As Long
For Wiederholungen = 1 To Sheets("Rang").Range("A65536").End(xlUp).Row
If Sheets("Rang").Cells(Wiederholungen, 1) = 1 Then
Zähler = Zähler + 1
End If
Next
If Zähler > 1 Then MsgBox "Es sind mehrere 1. Plätze vorhanden!", vbInformation, "Meldung"
End Sub


MfG,
coros
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 12 von Elhamplo

Hey Coros,

DANKE!!!!!

Du bist der Beste!!!! Funst wie sau!!!!!!!!!

Danke für Dein Hilfe

Antwort 13 von coros

Hi Elhamplo,

na bitte, haben wir es doch noch geschafft. ;-) Danke Dir auch für Deine Rückmeldung.

MfG,
coros
Jeder macht was er will, keiner macht was er soll, aber alle machen mit.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: