Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1140to1144
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
Anstelle Checkbox "nur" Zelle anklicken
Sonja
Hallo,
ich habe mir heute die Arbeit gemacht und in eine Mappte 100 Checkboxen eingebaut. Das ganze funtioniert auch ganz toll. Aber...
Die Mappe wird aufgeplustert und sehr, sehr langsam.
Eigentlich bräuchte ich auch keine Checkbox, sonder eine Klick auf die Zelle würde reichen. Mit "If Target.Adress" habe ich es aber nicht geschafft, mein Problem zu lösen.
Bei der Checkbox ist folgender Code hinterlegt, der auch funktioniert, wie ich es möchte. Ich möchte:
In Tabelle1 / A1 steht eine Zahl. Bei Klick soll genau diese Zahl in Tabelle2 / $A$3 eingetragen werden.
In Tabelle1 / A2 steht eine Zahl. Bei Klick soll genau diese Zahl in Tabelle2 / $A$3 eingetragen werden.
In Tabelle1 / A3 steht eine Zahl. Bei Klick soll genau diese Zahl in Tabelle2 / $A$3 eingetragen werden. etc
(Wenn das ganze schon mal ausgeführt wurde, dann steht in B1/B2/B3 die RE-Nummer und es kommt eine MsgBox, das ist aber soweit gelöst)
Private Sub Box1_Click()
If Range("B1")  "" Then
MsgBox "Für diese Buchung existiert bereits eine Rechnung. Neue Rechnung nicht möglich!"
Exit Sub
End If
If Box1 = True Then
Sheets("Tabelle2").Select
Worksheets("Tabelle2").Range("A3").Value = "1"
Else
Worksheets("Tabelle2").Range("A3").Value = "100"
Exit Sub
End If
End Sub

Private Sub Box2_Click()
If Range("B2")  "" Then
MsgBox "Für diese Buchung existiert bereits eine Rechnung. Neue Rechnung nicht möglich!"
Exit Sub
End If
If Box2 = True Then
Sheets("Tabelle2").Select
Worksheets("Tabelle2").Range("A3").Value = "2"
Else
Worksheets("Tabelle2").Range("A3").Value = "100"
Exit Sub
End If
End Sub

Hoffe, das ist so einigermaßen verständlich beschrieben.
Grüße Sonja
AW: Anstelle Checkbox "nur" Zelle anklicken
28.02.2010 14:17:13
Reinhard
Hallo Sonja,
es geht schon daß bei Klick auf eine Zelle ein Code ausgeführt wird, aber die Funktionalität von einer CB, also die Abprüfung ob sie True oder false ist haste nicht.
Gruß
Reinhard
AW: Anstelle Checkbox "nur" Zelle anklicken
28.02.2010 14:31:50
Sonja
Hallo Reinhard,
True und False ist ja eigentlich auch nur dazu da, was passiert, wenn man ein Häkchen in die Box setzt bzw. das Häckchen wieder entfernt.
Wenn es klappt nur mit "Zelle anklicken", dann brauche ich das ja nicht. Ausser die MsgBox-Meldung sollte erhalten bleiben.
Grüße
Sonja
Dafür nimmst du am besten das Doppelklick-...
28.02.2010 14:39:09
Luc:-?
…Ereignis, Sonja,
denn anhand deiner Ausführungen kann wohl auf eine True/False-Prüfung verzichtet wdn…
Ein einfacher Klick ist zwar auch möglich, aber vielleicht doch zu unsicher, falls nur etwas geändert wdn soll. Wenn nach einer Änderung im relevanten Bereich sofort reagiert wdn sollte, käme auch das Änderungsereignis infrage, aber das ist wahrscheinl auch nicht praxisrealistisch.
Bei allen diesen Ereignissen zuzuordnenden Prozeduren (_BeforeDoubleClick, _SelectionChange, _Change ) musst du natürlich Target gg den relevanten Bereich prüfen, aber nicht mit …Address, sondern mit der vbFkt Intersect, also etwa so…
If Not Intersect(Target, Range("relBereichZellAdr1:ZellAdrX")) Is Nothing Then
Gruß + schöSo, Luc :-?
Anzeige
AW: Anstelle Checkbox "nur" Zelle anklicken
28.02.2010 15:08:49
Sonja
Hallo Sepp,
Deine Lösung ist schon nahe dran, es ist aber wichtig, wenn ich auf die Zelle klicke, dass ich dann auf das Sheet "Tabelle2" komme. Häkchen brauche ich keine, denn ich habe ja später die Rechnungsnummer, die zeigt, das eine Rechnung geschrieben wurde.
Also auf Tabelle1 habe ich folgende Daten:
Name Vorname Staße PLZ Ort AnzahlTage
Die Rechnungen werden aber erst "irgendwann" einmal berechnet. Im Moment gehe ich jetzt manuel auf Tabelle2 (das Rechnungsformular) und trage händisch in Zelle A3 die Zeilennummer von Tabelle1 ein. So werden dann die Adresse und die Anzahl der Tage in die Rechnung übernommen. Ich würde aber gerne eben auf Tabelle1 in die gewünschte Zelle klicken und dann trägt es automatisch die Zeilennummer in Tabelle2 und wechselt auch automatisch zu Tabelle2.
So, hoffe habe mich nicht zu kompliziert ausgedrückt.
Grüße
Sonja
Anzeige
AW: Anstelle Checkbox "nur" Zelle anklicken
28.02.2010 15:15:59
Josef
Hallo Sonja,

dann nimm diesen Code, es ist egal, wo in der entsprechenden Zeile du den Doppelklick machst.

' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  With Target
    Cancel = True
    If Cells(.Row, 2) <> "" Then
      MsgBox "Für diese Buchung existiert bereits eine Rechnung. Neue Rechnung nicht möglich!"
    Else
      Worksheets("Tabelle2").Range("A3").Value = .Row
      Worksheets("Tabelle2").Activate
    End If
  End With
End Sub

Gruß Sepp

Anzeige
AW: Anstelle Checkbox "nur" Zelle anklicken
28.02.2010 15:16:20
Reinhard
Hallo Sonja,
mal ein andrer Ansatz:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 Then
Worksheets("Tabelle2").Range("A3") = Target
Worksheets("Tabelle2").Activate
End If
End Sub

Gruß
Reinhard
Ich ging natürlich davon aus, dass die gute...
28.02.2010 15:28:57
aus,
…Sonja, da sie ja schon eine fktd Subroutine hatte, mit meinen Infos zurechtkommt, Reinhard!
Aber nein, keine Reaktion, nur bei Sepp, der zuerst ja sogar weniger geschrieben hatte…
Im Übrigen habe ich in meinem Beitrag ja schon geschrieben, warum ich deine Lösung für unzweckmäßig halte, Reinhard… :-/
Naja, ob du 'ne Antwort bekommst, ist zweifelhaft, da die Dame ja wohl 'ne Brille braucht, weil sie immer nur den letzten Beitrag sieht. Viell bin ich ja jetzt der Letzte… ;-)
Aber nu iss zu spät — ich bin raus!
Gruß Luc :-?
Anzeige
AW: Ich ging natürlich davon aus, dass die gute...
28.02.2010 15:41:40
aus,
Hallo An Luc, Hallo an Reinhard, Hallo an Sepp,
leider funktioniert nichts von alledem.
Ich möchte einfach nur:
Ich klicke auf Zelle = möchte dadurch zu Sheet = und da etwas machen.
Alles andere könnte ich mir selbst zusammen zimmern...
Aber ich scheitere bei allen Lösungen (auch die, die ich in meinen 4stündigen Recherchen gefunden habe) daran, dass einfach nix passiert, wenn ich dann auf die Zelle klicke. Bisher hat sich eben nur bei der Lösung von Sepp was getan, aber eben noch nicht perfekt.
Grüße
Sonja
..also ich habe sepps lösung...
28.02.2010 15:46:23
robert
..ausprobiert, bei doppelklick in eine zelle
springt man in die zweite tabelle.
das ist es doch, was du willst-oder?
gruß
robert
Anzeige
AW: ..also ich habe sepps lösung...
28.02.2010 16:04:02
Sonja
Hallo Robert,
bei mir leider nicht!
Ich habe aber schon so viele andere Codes ausprobiert und die hatten auch nicht geklappt. Kann es denn sein, das in meiner Mappe irgendein anderes Makro ist, das diese Funktion blockiert?
Also bisher hat nur die Lösung mit den Checkboxen funktioniert.
Grüße
Sonja
AW: ..also ich habe sepps lösung...
28.02.2010 16:08:30
robert
hallo Sonja,
hast du die datei zwischendurch mal geschlossen und wieder geöffnet?
den fall hatte ich auch schon, dass es erst bei neuer öffnung
der datei funktioniert hat.
gruß
robert
AW: ..also ich habe sepps lösung...
28.02.2010 16:17:35
Sonja
Hi Robert,
jetzt funktionierts...
Grüße
Sonja
hast du meinen angepassten Code probiert? o.T.
28.02.2010 15:51:54
Josef
Gruß Sepp

Anzeige
AW: hast du meinen angepassten Code probiert? o.T.
28.02.2010 15:59:07
Sonja
Hi Sepp,
ja den habe ich ausprobiert, aber da kann ich auf die Zellen klicken bis der Arzt kommt, da geht nix...
Grüße
Sonja
AW: hast du meinen angepassten Code probiert? o.T.
28.02.2010 16:02:56
Josef
Hallo Sonja,

dann hast du den Code nicht richtig übernommen oder sonst irgendwas vermurkst.
Hier nochmals die Datei. https://www.herber.de/bbs/user/68280.xls

Gruß Sepp

AW: hast du meinen angepassten Code probiert? o.T.
28.02.2010 16:16:43
Sonja
Uf, Danke!
Jetzt hat es geklappt. Habe noch mal alles rausgelöscht, was ich so den Tag über ausprobiert habe und nur noch diesen Code rein.
Thanks!!
Grüße
Sonja
Anzeige
AW: Ich ging natürlich davon aus, dass die gute...
28.02.2010 16:24:40
aus,
Hallo Luc,
was immer viel Wert ist, die Dame gibt Rückmeldung.
Okay, nicht immer die die man sich erhofft aber immerhin, lobenswert.
Und, reine Spekulation, am Montag muß sie ihrem Chef, ihrer Chefin, eine funktioniernde Mappe vorlegen.
das macht schon den natürlichen Stress daß man wie ein Pferd mit Scheuklappen nur noch Lösungen akzeptiert die genau die Lösung erzeugen und alle anderen ignoriert und nicht auf Richtungsweisende Möglichkeiten untersucht.
Oder, oder,...
Vielleicht sollte man den "Fall" anders angehen, also erstmal zeigen wie die Mappe aussieht, ggfs. vorhandenen Code, dann auch ggfs. nochmal verdeutlichen was Sonja genau will.
Dann kriegen wir das locker hin, wenn nicht ich dann ihr und wenn das nicht klappt dann gehts halt nicht.
Gruß
Reinhard
Anzeige
Na, nu hat sie's ja! ;-) Gruß orT
28.02.2010 17:50:42
Luc:-?
…und alle können aufatmen… ;-)
:-?

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige