Anzeige
Archiv - Navigation
824to828
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
824to828
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

viele gleiche Makros?

viele gleiche Makros?
05.12.2006 15:51:13
Walburga
Hallo liebe Excelianer(innen)
ich habe ca. 20 Zellen, deren Inhalt nur das Plus- bzw. Minus-Zeichen ist. Ich möchte mittels Klick auf die jeweilige Zelle umschalten auf Plus oder Minus(halt immer das Gegenteil).
Wie kann ich das am besten realisieren, ohne das ich ca. 20 fast identische Makros schreibe?
Liebe Grüsse
Walburga

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: viele gleiche Makros?
05.12.2006 15:56:25
ChrisL
Hallo und Gruss
Chris

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target = "+" Then
Target = "-"
Else
If Target = "-" Then Target = "+"
End If
End Sub

AW: viele gleiche Makros?
05.12.2006 16:06:10
Walburga
Hallo Chris
schon ganz gut, aber noch nicht gut genug, da beim erneuten Klicken bei der gleichen Zelle keine Änderung mehr erfolgt, da "Worksheet_SelectionChange".
ich dachte eher an die Funktion: Caller, komme damit aber nicht klar.
Grüsse Walburga
AW: viele gleiche Makros?
05.12.2006 16:09:45
ChrisL
Hallo
Caller geht in diesem Zusammenhang nicht.
Ausser Rechtsklick scheint es mir nichts passendes zu geben. Wie hättest du denn deine 20 Einzelmakros angesprochen? ;-)
Gruss
Chris
Anzeige
AW: viele gleiche Makros?
05.12.2006 16:19:55
Walburga
Hi Chris
so in der Art

Sub zelleF()
If Cells(2, 5) = "+" Then
Cells(2, 5) = "-"
Else
If Cells(2, 5) = "-" Then Cells(2, 5) = "+"
End If
End Sub

dieses Makro weise ich einer Autoform(Rechteck)(durchsichtig formatiert)zu
Gruss Walburga
AW: viele gleiche Makros?
05.12.2006 16:28:31
Reinhard
Hi Walburga,
die Datei: https://www.herber.de/bbs/user/38749.xls
hat folgenden Code in tabelle1:
Option Explicit
Sub tt()
Dim Zelle As Range
Set Zelle = ActiveSheet.Shapes(Application.Caller).TopLeftCell
If Zelle = "+" Or Zelle = "-" Then Zelle = Chr(43 - (Zelle = "+") * 2)
End Sub

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
AW: viele gleiche Makros?
05.12.2006 16:33:21
Walburga
Hallo Reinhard
das wars, vielen Dank und einen schönen Abend noch.
Walburga
AW: viele gleiche Makros?
05.12.2006 16:00:15
EtoPHG
Hallo Walburga,
In die Tabelle, Rechtsklick ändert:
Range-Beispiel "A1:B5" anpassen !

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(Target, ActiveSheet.Range("A1:B5")) Is Nothing Then Exit Sub
Select Case Target.Value
Case "-"
Target.Value = "+"
Case "+"
Target.Value = "-"
End Select
Cancel = True
End Sub

Gruss Hansueli
AW: viele gleiche Makros?
05.12.2006 16:07:54
Walburga
Hallo Hansueli
Rechtsklick kommt nicht in Frage, sorry. Welche Möglichkeiten gibt es mit der Funktion Caller? (siehe Antwort an Chris)
Liebe Grüsse
Walburga
Anzeige
AW: auf offen gestellt
05.12.2006 16:08:46
Walburga
AW: viele gleiche Makros?
05.12.2006 16:18:06
Matthias
Hallo Walburga,
Einfachlinksklick lässt sich aber nicht machen, der kann ja nicht mal von einem Bewegen auf die Zelle mittels Cursortasten unterschieden werden.
Wie wäre es mit Doppelklick?
Gruß Matthias
AW: viele gleiche Makros?
05.12.2006 16:21:09
Walburga
Hi Matthias
auch Doppelclick kommt nicht in Frage!
Gruss Walburga
AW: viele gleiche Makros?
05.12.2006 16:24:55
Matthias
Hallo,
na dann weiß ich auch keine Lösung, außer lauter Steuerelemente zu erstellen, oder eine Taste zum Umschalten zu verwenden, z.B. F12 oder so.
Aber ausschließlich Linksklick geht nur mit Steuerelementen.
Gruß Matthias
AW: Frage auf offen gestellt
05.12.2006 16:27:34
Walburga
Hi Matthias , trotzdem danke
AW: Frage auf offen gestellt
05.12.2006 20:49:59
Daniel
Hallo
eigentlich ganz einfach:
du erstellst ein ganz normales Grafikelement (oder auch ein Formularfeld, aber auf keinen Fall ein Steuerelement), am besten ist ein einfaches Rechteck und weist ihm dieses Makro zu: (das Makro muß im allgemeinen Modul stehen)

Sub Plus_Minus()
With ActiveSheet.Shapes(Application.Caller).TopLeftCell
Select Case .Value
Case "+"
.Value = "-"
Case Else
.Value = "+"
End Select
End With
End Sub

dieses Makro schreibt in die Zelle, in der sich die obere linke Ecke des Grafikelements befindet wechselweise ein Plus oder Minus.
Wenn du das für mehrere Zellen brauchst, einfach das Grafikelement kopieren. Die Makroverknüpfung bleibt dabei erhalten.
https://www.herber.de/bbs/user/38760.xls
Gruß, Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige