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

Range erweitern

Range erweitern
13.09.2018 16:48:12
Tim
Hallo, ich habe ein Makro welches mir Datum und Username in eine Zelle schreibt sobald ein Eintrag in Spalte C getätigt wird. Jetzt wollte ich diese Funktion um Spalte F erweitern, mit der gleichen Logik, wie erreiche ich das = Range("C:C";F:F) funktioniert nicht!?
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim RaBereich As Range
Dim RaZelle As Range
Set RaBereich = Range("C:C")
Set RaBereich = Intersect(RaBereich, Target)
If Not RaBereich Is Nothing Then
Application.EnableEvents = False
ActiveSheet.Unprotect ("Test")
For Each RaZelle In RaBereich
If RaZelle  "" Then
RaZelle.Offset(0, -2) = Date
RaZelle.Offset(0, -1) = VBA.Environ("Username")
End If
Next RaZelle
ActiveSheet.Protect ("Test")
Application.EnableEvents = True
End If
Set RaBereich = Nothing
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Range erweitern
13.09.2018 17:18:58
Torsten
Frage 1: Funktioniert das so fuer Spalte C?
Ich versteh nicht, warum RaBereich zweimal Set bekommt.
Das funktioniert nicht.
Frage 2: Soll bei Spalte F Datum und Name dann auch in Spalte A und B geschrieben werden?
Dann sollte man fuer Spalte F einen extra code machen vielleicht?
AW: Range erweitern
13.09.2018 17:33:18
Tim
Das Makro funktioniert so wie es jetzt ist. Das Datum und der Name sollte in D und E geschrieben werden, gern auch mit einem neuen Code.
AW: Range erweitern
13.09.2018 17:34:24
onur

Private Sub Worksheet_Change(ByVal Target As Range)
dim z,s
for each cell in target
s=cell.column
z=cell.row
if s=3 or c=6
ActiveSheet.Unprotect ("Test")
if cell>

Anzeige
AW: Range erweitern
13.09.2018 18:00:02
Tim
Eine kleine Anpassung und es funktioniert so wie es mir vorgestellt habe, vielen Dank!
Private Sub Worksheet_Change(ByVal Target As Range)
dim z,s
for each cell in target
s=cell.column
z=cell.row
if s=3 or c=6 Then
ActiveSheet.Unprotect ("Test")
if cell>

AW: Range erweitern
13.09.2018 18:21:32
onur
Habe es gesehen:
if s=3 or c=6
soll natürlich s=6 heissen.
AW: Range erweitern
13.09.2018 18:23:46
onur
Habe es gesehen:
if s=3 or c=6

soll natürlich s=6 heissen.
Und:
dim z,s,cell

AW: Range erweitern
13.09.2018 21:51:43
EtoPHG
Hallo,
@Torsten: Warum soll das nicht funktioniern?
@onur: Das Blatt steht nachher ohne Schutz da!
Die einzige Codezeile die angepasst werden muss:
Set RaBereich = Range("C:C,F:F")

oder statt 2mal Set (was natürlich funktioniert), ersatzweise durch 1 Codezeile:
Set RaBereich = Intersect(Range("C:C,F:F"), Target)

Gruess Hansueli
Anzeige
AW: Range erweitern
14.09.2018 17:27:26
onur
Die Aufgabenstellung war: "Jetzt wollte ich diese Funktion um Spalte F erweitern, mit der gleichen Logik, wie erreiche ich das?", und NICHT alle Programmierfehler des Codes zu Beheben.
Das Blatt stand auch VORHER schon am Ende des Codes ohne Schutz da.
Nein, das ist nicht so...
14.09.2018 18:07:04
EtoPHG
Hallo onur,
1. Ich habe KEINE Programmierfehler behoben.
2. Dein Codevorschlag outet dich als Hobby-Bastler, der wenig, bis keine Ahnung vom Objektmodell von XL und der Objekt-Methoden hat.
3. Ist Deine Aussage über den Blattschutz FALSCH!
Gruess Hansueli

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige