Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1320to1324
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
Inhaltsverzeichnis

Vaiable in Messagebox für bestimmten Code

Vaiable in Messagebox für bestimmten Code
19.07.2013 08:06:05
Patrick
Guten Tag,
ich habe folgendes Problem:
In dem Code, den ich angefügt habe, ist eine Messagebox vorhanden, in die jeweils IngZahlNeu und IngZahlAlt angezeigt werden sollen, jedoch bekomm ich das nicht hin.
Außerdem ändert sich beim Einfügen die Zellenfarbe, in dem Fall wird sie wieder weiss. Sie soll aber die Farbe behalten, die ihr gegeben wurde (Ist nicht immer die Gleiche).
Kurz zum Code:
Man "doppelklickt" eine Zelle und schneidet ihren Wert aus.
Doppelklick in eine beliebige andere Zelle und der Wert wird dort eingefügt, wenn die _
ausgeschnittene Zahl größer ist, als die Zahl in der Zielzelle.

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim MyRange As Range
Dim lngZahlNeu As Long
Dim Neu As Integer
Dim Alt As Integer
If bolCut Then
lngZahlNeu = Range(Target.Address)
If (lngZahlNeu & IngZahlAlt
Range(Target.Address) = lngZahlAlt
bolCut = False
Cancel = True
Else
MsgBox "Nicht überschrieben!" & IngZahlNeu
lngZahlAlt = Null
bolCut = False
Cancel = True
End If
Exit Sub
End If
Set MyRange = Range("C5:J12") 'AUF DEINE RANGE ANPASSEN, IN WELCHER DIE ABFRAGE STATTFINDEN  _
SOLL
If (Not Intersect(Target, MyRange) Is Nothing) And (bolCut = False) Then
If (Target.Cells.Count = 1) Then
lngZahlAlt = Range(Target.Address)
Range(Target.Address).Clear
bolCut = True
Cancel = True
End If
End If
End Sub
Das Fett gedruckte habe ich selbst ergänzt, jedoch ohne Erfolg
Gruß
Patrick

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vaiable in Messagebox für bestimmten Code
19.07.2013 09:02:33
Rudi
Hallo,
das muss lngZahl heißen, nicht IngZahl (L, nicht i)
Außerdem ist Range(Target.Address) von hinten durch die Brust ins Auge. Target reicht.
Gruß
Rudi

Bissl verdreht
19.07.2013 09:06:51
JACKD
Wenn du den Code anders ordnest geht es =)
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim MyRange As Range
Dim lngZahlNeu As Long
Dim Neu As Integer
Dim Alt As Integer
Set MyRange = Range("C5:J12") 'AUF DEINE RANGE ANPASSEN, IN WELCHER DIE ABFRAGE STATTFINDEN _
SOLL
If (Not Intersect(Target, MyRange) Is Nothing) And (bolCut = False) Then
If (Target.Cells.Count = 1) Then
lngZahlAlt = Range(Target.Address)
Range(Target.Address).Clear
bolCut = True
Cancel = True
End If
End If
If bolCut Then
lngZahlNeu = Range(Target.Address)
If (lngZahlNeu 
Grüße

Anzeige
AW: Bissl verdreht
19.07.2013 09:10:16
Rudi
Hallo,
da gibt' aber noch immer dieses Problem:
MsgBox "Überschrieben" & IngZahlAlt
Range(Target.Address) = lngZahlAlt
Gruß
Rudi

AW: Bissl verdreht
19.07.2013 09:14:13
JACKD
Zumal er selbst dann nicht funktioniert wenn du die variablennamen anpasst
lngzahlneu und lngzahlalt ist immer leer da ein range ja nicht auf ne long variable passt
Grüße

Ich ziehe die Aussage zurück ..
19.07.2013 09:16:43
JACKD
und revidiere sie .. geht natürlich (is ja der Wert)
-.-#
Is doch etwas zu früh :-D
Grüße

AW: Ich ziehe die Aussage zurück ..
19.07.2013 09:40:27
Patrick
Vielen Dank für eure Hilfe.
Die Messagebox funktioniert prima.
Dass ich das I und l verwechselt habe ist ja schon peinlich :D.
Nun meine Zusatzfrage von oben:
Wie schaffe ich es, dass die Zellenfarbe beibehalten wird?
Gruß
Patrick

Anzeige
AW: Ich ziehe die Aussage zurück ..
19.07.2013 10:34:04
Hajo_Zi
Hallo Patrick,
man könnte nur vermuten das es an
Range(Target.Address).Clear
liegt, testen können wir es ja nicht.

AW: Ich ziehe die Aussage zurück ..
19.07.2013 10:56:27
Patrick
Ich habe jetzt einfach diesen Befehl eingefügt:
Range("C10:J12").Interior.ColorIndex = 37
Danke für eure Hilfe!

AW: Ich ziehe die Aussage zurück ..
19.07.2013 13:07:57
Luschi
Hallo Patrick,
benutze statt .Clear .ClearContents - da bleibt die Formatierung erhalten!
Gruß von Luschi
aus klein-Paris

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige