Wenn Inhalt gleich dann..

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

DrAntiDot
Beiträge: 2
Registriert: Di, 22.01.2013 09:09

Wenn Inhalt gleich dann..

Beitrag von DrAntiDot »

Hi liebe Oo gemeinde.
Ich habe folgendes anliegen. Ich möchte das bestimmte Zellen miteinander abgeglichen werden. Wenn ich dann diese Zellen einen Wert von 0-3 eingebe, soll er meckern wenn ich zB den Wert 2 mehrfach eintrage! Die 0 soll aber in allen Zellen möglich sein! :) Es soll halt verhindert werden oder deutlich gemacht werden das dort ein Konflikt vorliegt wenn man den Wert 2mal einträgt!
Ist das möglich?

LG Thore
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Wenn Inhalt gleich dann..

Beitrag von Stephan »

Du kannst Dafür Daten-Gültigkeit und eine Funktion nutzen.

Erstelle z.B. folgende Funktion:

Code: Alles auswählen

Function Wert_pruefen(x)
  If x < 0 OR x > 3 Then
      Msgbox ("Eingabewert nicht im Bereich 0 bis 3.", 0, "Ungültige Eingabe")
      Wert_pruefen = False
      Exit Function
    ElseIf x <> 0 Then
      tmp = ThisComponent.CurrentController.ActiveSheet.getCellRangeByName("A1:A10").getDataArray()
      doppel = 0
      For i = 0 To UBOUND(tmp())
        tmp2() = tmp(i)
        If tmp2(0) = x Then
          doppel = 1
        End If
      Next i
      If doppel = 0 Then
          Wert_pruefen = True
        Else
          Wert_pruefen = False
          Msgbox ("Eingabewert ist bereits vorhanden.", 0, "Ungültige Eingabe")
      End If
  End If
End Function
-Markiere nun die zu prüfen Zellen (hier A1 bis A10) und rufe Daten-Gültigkeit (im Menü) auf
-Wähle auf dem Register "Kriterien" einen WErt der niemal vorkommen wird, z.B. Textlänge = 100
-Wähle im Register "Fehlermeldung" die Aktion Makro und gib obige Funktion an


Gruß
Stephan
Dateianhänge
Beispiel_Daten-Gültigkeit.ods
(8.48 KiB) 51-mal heruntergeladen
DrAntiDot
Beiträge: 2
Registriert: Di, 22.01.2013 09:09

Re: Wenn Inhalt gleich dann..

Beitrag von DrAntiDot »

OK, gleich zur Verteidigung, ich bin Neuländler bei Oo. ;)

Bis zum Punkt: -Wähle im Register "Fehlermeldung" die Aktion Makro und gib obige Funktion an
habe ich auch alles verstanden, nur ich habe dort keine Eingabemöglichkeit! Oder muss ich vorher eine Funktion erstellen, die ich dann dort auswählen kann?
Antworten