Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
192to196
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
192to196
192to196
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Worksheet_Change

Worksheet_Change
19.12.2002 12:36:54
Andre
Mahlzeit, habe ein Problem:

Ich lese Daten in eine Tabelle ein, leider besitz jede Zelle der Spalte A:A jetzt zwei Daten ( Datum & Zeit ).
Ich brauche aber nur Datum der Zellen, d.h. mit =links(?;8) kann ich dieses Datum auslesen.

Jetzt hätte ich dies gerne mit Worksheet_Change erreicht:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
Target.Offset(0, 2).Value =
End If
End Sub

Das heißt, in der Zelle der Spalte C:C der jeweiligen Zeile soll der Datumswert der Zelle in A:A stehen, nicht die Formel =links().

Kann mir da jemand helfen?

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

Betreff
Datum
Anwender
Anzeige
Re: Worksheet_Change
19.12.2002 12:49:24
Udo RiHü
Hallo,
1. Warum formatierst du die Zellen nicht entsprechend?
2. target.offset(0,2)=left(target,8)

Gruss aus'm Pott
Udo

Re: Worksheet_Change
19.12.2002 12:50:04
Hajo_Zi
Hallo Andre


Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then Target.Offset(0, 2).Value = CDate(Format(Target, "dd.mm.yy"))
End Sub

Code eingefügt mit: Excel Code Jeanie

Code Jeanie
Frage
Das Umsetzen nach Html klappt perfekt, auch die Ansicht in den Foren ist gegeben. Bei manchen Foren kann man aber anscheinend nicht den dargestellten Code nach VBA rückkopieren. Warum?
Antwort
Dies liegt nicht an der Code Jeanie !!! Manche Foren interpretieren anscheinend < pre > < /pre > Tags nicht richtig und erzeugen am Zeilenende einen weichen Zeilenumbruch anstatt eines harten Zeilenumbruches. Dies führt dazu, dass im VBA-Editor die Zeilen hintereinander geschrieben werden. Zum Rückkopieren in solchen Fällen: Fügen Sie den kopierten Code aus dem Forum nach Word ein, kopieren Sie ihn dort wieder und fügen Sie ihn dann im VBA - Editor ein


Gruß hajo

Anzeige
Re: Worksheet_Change
19.12.2002 13:14:26
Andre
Danke Hajo, aber das haut nicht hin, wenn ich die Daten über "Externe Daten" einlese.

Habe deshalb eine andere Frage:

Wie muß ich diesen Code ändern, um den selben Effekt bei allen Zeilen zu erreichen, in denen A1 nicht leer ist, wenn sich H1 ändert.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = $H$1 Then
Target.Offset(0, 2).Value = CDate(Format(Target, "dd.mm.yy"))
End If
End Sub

Gruß Andre

Re: Worksheet_Change
19.12.2002 13:18:20
Hajo_Zi
Hallo Andre

ich vermute mal deine Daten sin dann auch kein Datum, sie stehen nicht rechts in der Zelle.


Den anderen Teil verstehe ich nicht A1 und H1 sind für mich zwei Zellen, wer ist aber "allen Zeilen"

Gruß Hajo

Anzeige
Re: Worksheet_Change
19.12.2002 13:23:36
Andre
Jab, du hast recht.
Beim Einlesen ist das Datum als Text vorgeben. Sorry, hätte ich auch sofort erwähnen können.

Daher wollte ich auch mit der Formel =links() arbeiten.

Allen Zeilen heißt, daß bei Änderung der Zelle H1 in jeder Zelle C der Wert eingetragen wird, in dessen Zelle A auch Daten eingelesen wurden.

Re: Worksheet_Change
19.12.2002 13:27:43
Hajo_Zi
Hallo Andre

mit derr Formel Links kannst Du doch noch immer arbeiten (natürlich englisch)

Von der Beschreibung
Zelle A1
Zeile 3
Spalte C

ich bin noch kein Stück weiter

Gruß Hajo

Re: Worksheet_Change
19.12.2002 13:34:20
Andre
Okay.

In Spalte A:A stehen jetzt 40.000 Daten.
In Spalte C:C steht nix.
Jetzt ändere ich H1 von Hüh auf Hott.
In Spalte C:C sollen dann die ersten 8 Zeichen aus A:A stehen.
( in C6 aus A6; in C78 aus A78; in C23999 aus A23999; usw.)

In A40001 steht nix, dann soll in C40001 auch nix stehen!

Gruß Andre

Anzeige
Re: Worksheet_Change
19.12.2002 13:59:31
Hajo_Zi
Hallo Andre


Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 8 Then
Application.EnableEvents = False
Cells(Target.Row, 3).Value = Left(Cells(Target.Row, 1), 8)
Application.EnableEvents = True
End If
End Sub

Code eingefügt mit: Excel Code Jeanie

Code Jeanie
Frage
Das Umsetzen nach Html klappt perfekt, auch die Ansicht in den Foren ist gegeben. Bei manchen Foren kann man aber anscheinend nicht den dargestellten Code nach VBA rückkopieren. Warum?
Antwort
Dies liegt nicht an der Code Jeanie !!! Manche Foren interpretieren anscheinend < pre > < /pre > Tags nicht richtig und erzeugen am Zeilenende einen weichen Zeilenumbruch anstatt eines harten Zeilenumbruches. Dies führt dazu, dass im VBA-Editor die Zeilen hintereinander geschrieben werden. Zum Rückkopieren in solchen Fällen: Fügen Sie den kopierten Code aus dem Forum nach Word ein, kopieren Sie ihn dort wieder und fügen Sie ihn dann im VBA - Editor ein

Gruß Hajo

Anzeige
Re: Worksheet_Change
19.12.2002 14:15:46
Andre
Danke, Hajo, weitere Rückfragen haben wohl wenig Sinn.
Bastel mir den Rest irgendwie selbst zusammen.

Bis dann.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige