Seite 1 von 1

Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Mi, 11.03.2015 10:09
von sucher3000
Hallo zusammen!

Ich habe eine Tabelle zum Erfassen von firmeninternen Anrufen, ähnliches eines Ticketssystems.

In der Spalte G wird hierbei der Name des Anrufers eingetragen. In der Spalte H wird eingetragen, ob an den Anrufer eine Umfrage versendet wurde. Hier gibt es als Antwortmöglichkeit über Daten --> Gültigkeit nur "Ja" oder "Nein".

Nun möchte ich, dass der Name des Anrufers in Spalte G gelöscht wird sobald ich in Spalte H ein "Ja" oder "Nein" auswähle.

Die bedingte Formatierung fällt raus, der Name soll ja tatsächlich gelöscht werden soll und nicht nur die Formatierung geändert werden soll.
Eine Formel fällt für Spalte G auch aus, da hier händisch der Name eingetragen werden soll.

Habt ihr eine Idee, wie ich dies umsetzen könnte?
Danke im Voraus!

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Mi, 11.03.2015 10:41
von Karolus
Hallo
Habt ihr eine Idee, wie ich dies umsetzen könnte?
Im Prinzip ja, über ein kleines Makro gebunden an das Tabellenereignis ``Inhalt geändert`` ...
Sollte man bei der Gelegenheit nicht gleich auch den Inhalt von Spalte H zurücksetzen ?

Karolus

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Mi, 11.03.2015 11:01
von sucher3000
Hallo Karolus,

Die Spalte H soll befüllt bleiben. So kann ich auswerten wie viele sich den Umfragebogen haben zuschicken lassen.

Auch ein kleines Makro ist für jemand der keine Ahnung davon hat schwierig.

Wie ich dieses mit einem Tabellenereignis verbinde, weiß ich. Nur von dem Makro selber habe ich keine Ahnung.
Kannst du mir da konkret weiterhelfen?


Danke!

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Mi, 11.03.2015 11:13
von Karolus
Hallo
Die Spalte H soll befüllt bleiben
Das ist ungünstig, weil damit ein späterer Neueintrag in der Zeile nicht "bemerkt" wird, weil sich in Spalte H evtl. nichts "ändert".
So kann ich auswerten wie viele sich den Umfragebogen haben zuschicken lassen
Die Auswertung respektive das Update der Auswertung könnte man ebenfalls bei der Gelegenheit erledigen.

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Mi, 11.03.2015 12:32
von sucher3000
Was genau schwebt dir da denn vor?

Wie gesagt von der Makro-Programmierung bin ich leider völlig ahnungslos. Daher wäre es toll, wenn du mir etwas an die Hand geben könntest!

Dankeschön!

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Mi, 11.03.2015 12:57
von Karolus
sucher3000 hat geschrieben:Was genau schwebt dir da denn vor?
wäre das nicht eher ein Anschlussauftrag für @clag?
Karolus

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Do, 12.03.2015 12:04
von clag
Hallo sucher3000,

hier ein Makro das deinen Wunsch erfüllen sollte
ändert sich in Spalte H ein Zellinhalt wird in Spalte G in der Zelle auf gleicher Zeile der Text gelöscht
wenn das Makro mit dem Tabellenereignis Inhalt geändert verknüpft wird.

Code: Alles auswählen

Sub RemoveName(oEvent)
	odoc=thisComponent 
	iStartCol = oEvent.RangeAddress.StartColumn
	iStartRow = oEvent.RangeAddress.StartRow
	iStartShe = oEvent.RangeAddress.Sheet
	if iStartCol = 7 then
		if iStartRow > 3 and iStartRow < 1000 then
			oDoc.sheets(iStartShe).getCellByPosition(iStartCol-1,iStartRow).string = ""
		end if
	end if
End Sub

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Do, 12.03.2015 12:26
von Karolus
Hallo

Code: Alles auswählen

'oDoc.sheets(iStartShe)
oEvent.Spreadsheet

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Do, 12.03.2015 12:34
von clag
Hi Karolus,

danke für die Optimierung
kann @sucher3000 sicher noch einpflegen bei der Übernahme

Code: Alles auswählen

Sub RemoveName(oEvent)
   iStartCol = oEvent.RangeAddress.StartColumn
   iStartRow = oEvent.RangeAddress.StartRow
   if iStartCol = 7 then
      if iStartRow > 3 and iStartRow < 1000 then
         oEvent.Spreadsheet.getCellByPosition(iStartCol-1,iStartRow).string = ""
      end if
   end if
End Sub

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Do, 12.03.2015 13:25
von sucher3000
Ich danke euch beiden!

Ich hatte clag auch eine PN geschrieben und meinen ersten eigenen Code-Versuch geschrieben.

Der sah wie folgt aus:

Code: Alles auswählen

Sub NamenLoeschen(oEvent)
   odoc=thisComponent
   iStartCol = oEvent.RangeAddress.StartColumn
   iStartRow = oEvent.RangeAddress.StartRow   
   iStartShe = oEvent.RangeAddress.Sheet
   if iStartCol = 7 then
      if iStartRow > 3 and iStartRow < 1000 then
End Sub
Immerhin das hat ja gepasst!

Nun fehlt mir für mein Interesse nur noch eine Erklärung zum folgenden Befehl:

Code: Alles auswählen

oEvent.Spreadsheet.getCellByPosition(iStartCol-1,iStartRow).string = ""
Er schreibt einfach "" als String in die Zelle die sich -1 Spalte neben der geänderten Zelle befindet, richtig?

Und einen Vergleich ob die geänderte Zelle den Wert "Ja" oder "Nein" hat, findet gar nicht statt. Ist auch nicht nötig dadurch das ich das Marko damit dem Ändern des Inhaltes verknüpft habe. Sehe ich das richtig?

Re: Zelleninhalt in Abhängigkeit des Wertes einer anderen Zelle löschen

Verfasst: Do, 12.03.2015 13:41
von clag
Hallo sucher3000,
sucher3000 hat geschrieben: Und einen Vergleich ob die geänderte Zelle den Wert "Ja" oder "Nein" hat, findet gar nicht statt.
ja stimmt
sucher3000 hat geschrieben: Ist auch nicht nötig dadurch das ich das Marko damit dem Ändern des Inhaltes verknüpft habe. Sehe ich das richtig?
nein stimmt nicht,
nur deine Aufgabestellung bzw Konstellation macht es überflüssig auf den Inhalt der Zelle zu prüfen.