Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1288to1292
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

onChange

onChange
04.12.2012 11:34:33
ptonka
Hallo zusammen,
ich habe folgendes onChange in meiner Tabelle "Tabelle1" hinterlegt:
Private Sub Worksheet_Change(ByVal target As Range)
Wert = target.Value
Spalte = ActiveCell.column
Zeile = ActiveCell.Row
Select Case Spalte
Case Is  1
Exit Sub
Case Is = 1
If Wert = "" Then Exit Sub
Cells(Zeile - 1, 5).Value = Cells(Zeile - 1, 1) & Cells(Zeile - 1, 2) & Cells(Zeile - 1, 3) & " _
1" & Cells(Zeile - 1, 4)
End Select
End Sub

Es sorgt lediglich dafür, dass bei einem Eintrag in Spalte A in Spalte E die Werte
aus A, B, C einer 1 und D kombiniert und in E ausgegeben werden.
Nun funtkioniert dies aber nur, wenn die Eingabe in A mit ENTER bestätigt wird.
Verlasse ich Spalte A mit TAB oder per Maus wird das onChange nicht ausgeführt.
Was kann ich tun, damit auch das funtkioniert?
Für einen Tipp wäre ich mehr als dankbar.
Gruß,
Ptonka

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: onChange
04.12.2012 11:50:08
Rudi
Hallo,
Verlasse ich Spalte A mit TAB oder per Maus wird das onChange nicht ausgeführt.
Unsinn.
Gruß
Rudi

AW: onChange
04.12.2012 13:26:20
ptonka
Hi Rudi,
was heisst hier Unsinn ?
Von Dir bin ich eigentlich qualifizierte Hilfen gewohnt.
Bevor Du lediglich "Unsinn" schreibst, dann schreib lieber gar nichts.
Ich würde doch so eine Beschreibung nicht abliefern, wenn es nciht stimmt.
Gruß,
Ptonka

AW: onChange
04.12.2012 13:45:32
Rudi
Hallo,
mein Excel reagiert auf jegliche Veränderung. Egal, ob ich die Zelle mit Enter, Tab oder der Maus verlasse.
Entscheidend ist, dass die Zelle im Bearbeitungsmodus war.
Deshalb Unsinn.
Gruß
Rudi

Anzeige
AW: onChange
04.12.2012 14:12:57
Sheldon
Hallo,
ich darf noch einen weiteren Hinweis ergänzen: Du fragst in Deinem Makro nach der Spaltennummer der Activecell. Darin liegt das eigentliche Problem: Wenn du Enter drückst, so wird deine Einfügemarke nach unten verschoben, falls Du an der Std-Eintellung nichts geändert hast. Bei Tab wird sie nach rechts verschoben, falls nicht mehrere Zellen markiert sind. Bei Klick mit der Maus eben dahin, wo du hinklickst. Dein Changeereignis soll aber laut Deinem Code aber nur bei Activecell.Column=1 ausgeführt werden. Das ist Quatsch, Du solltest lieber nach Target.Column=1 fragen.
Gruß
Sheldon

Anzeige
AW: onChange
04.12.2012 14:40:16
Rudi
Hallo,
nur auf Target basierend:
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Target.Column
Case 1  ' Änderung in A
If Target.Count = 1 Then  ' nur 1 Zelle
If Target  "" Then    ' nicht leer
Target.Offset(, 4) = Target _
& Target.Offset(, 1) _
& Target.Offset(, 2) _
& "1" _
& Target.Offset(, 3)
Else
'Target.Offset(, 4) = ""
End If
End If
End Select
End Sub

Gruß
Rudi

AW: onChange
04.12.2012 15:25:33
ptonka
Hallo zusammen,
es klappt - Prima !!!!
Vielen Dank an alle und @RUDI: Nichts für ungut, aber da warst Du, glaube ich, ein wenig vorschnell ;-)
Gruß,
Ptonka

Anzeige
vorschnell
04.12.2012 15:33:50
Rudi
Hallo,
keineswegs.
Deine Aussage: Verlasse ich Spalte A mit TAB oder per Maus wird das onChange nicht ausgeführt.
Es wird ausgeführt, nur hat es aufgrund deiner Bedingungen keine Auswirkungen.
Gruß
Rudi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige