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

Frage an EtoPHG

Frage an EtoPHG
21.11.2006 20:26:20
Marko
Hallo Hansueli :-)
diesen Sub hast du mir erstellt
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim vFound As Variant
If Target.Column <> 2 Then Exit Sub
On Error Resume Next
Target.AddComment (Sheets("Tally-Liste").Cells(Application.WorksheetFunction.Match(Target.Value, Sheets("Tally-Liste").Range("B2:B1000"), 0) + 1, 2).Comment.Text)
End Sub

und den hier hab ich nun selbst erstellt (also mit informationen aus deinem und dem was ich schon auf der seite gelesen habe die du mir geschickt hast)
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim vFound As Variant
If Target.Column <> 3 Then Exit Sub
On Error Resume Next
Target.AddComment (.Cells(Application.WorksheetFunction.Match(Target.Value, .Range("L2:L700"), 0) + 1, 12).Comment.Text)
End Sub

beide funktionieren ja auch super in verschiedenen arbeitsmappen
aber wie muss das aussehen wenn nun beide funktionen in einer liste verwenden möchte?
gruß marko

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Frage an EtoPHG
21.11.2006 20:49:25
Peter
Hallo Marko,
ich bin zwar nicht EtoPHG, trotzdem hier mein Versuch:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
On Error Resume Next
Target.AddComment _
(Sheets("Tally-Liste").Cells(Application.WorksheetFunction.Match(Target.Value, _
Sheets("Tally-Liste").Range("B2:B1000"), 0) + 1, 2).Comment.Text)
ElseIf Target.Column <> 3 Then Exit Sub
On Error Resume Next
Target.AddComment _
(Sheets("Tally-Liste").Cells(Application.WorksheetFunction.Match(Target.Value, _
Sheets("Tally-Liste").Range("L2:L700"), 0) + 1, 12).Comment.Text)
End If
End Sub

Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: Frage an EtoPHG
21.11.2006 21:07:40
Marko
hallo Peter,
nein das geht leder nicht!
hatte aber zusätzlich in meinem code noch einen fehler...
so ist er richtig

Private Sub Worksheet_Change(ByVal Target As Range)
Dim vFound As Variant
If Target.Column <> 3 Then Exit Sub
On Error Resume Next
Target.AddComment (Cells(Application.WorksheetFunction.Match(Target.Value, Range("L2:L700"), 0) + 1, 12).Comment.Text)
End Sub

der erste code sucht im zweiten tabellenblatt, und der zweite code im ersten tabellen blatt, darum steht bei meinem auch nicht "Tally-Liste"
aber in meinem hatte ich noch zwei punket vor Cells und Range die da nicht hin gehörten
trotzdem danke
gruß marko
Anzeige
AW: Frage an EtoPHG
22.11.2006 06:53:15
Marko
Hab es selbst hin bekommen!!
und hier auch nun die Lösung! :-)

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 2 Then
On Error Resume Next
Target.AddComment (Sheets("Tally-Liste").Cells(Application.WorksheetFunction.Match(Target.Value, Sheets("Tally-Liste").Range("B2:B1000"), 0) + 1, 2).Comment.Text)
Else: If Target.Column <> 3 Then Exit Sub
On Error Resume Next
Target.AddComment (Cells(Application.WorksheetFunction.Match(Target.Value, Range("L2:L700"), 0) + 1, 12).Comment.Text)
End If
End Sub

gruß marko
Anzeige
AW: Frage an EtoPHG
22.11.2006 08:59:04
EtoPHG
Hallo Marko,
Super, selbst ist der Mann!
War gestern weg.
Kleinere Anmerkungen zu Deiner Lösung:
1. On Error ist nur einmal nötig. Wird hier gebraucht, falls kein Kommentar für den Wert des Eintrags im Quellbereich steht.
2. Select Case bringt eine klarere Struktur rein und könnte einfacher ausgebaut werden.
Also, dieser Code macht das gleiche, ist aber m.E. leichter lesbar (für Programmierer!):

Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Select Case Target.Column
Case 2
Target.AddComment (Sheets("Tally-Liste").Cells(Application.WorksheetFunction.Match(Target.Value, Sheets("Tally-Liste").Range("B2:B1000"), 0) + 1, 2).Comment.Text)
Case 3
Target.AddComment (Cells(Application.WorksheetFunction.Match(Target.Value, Range("L2:L700"), 0) + 1, 12).Comment.Text)
End Select
End Sub

Gruss Hansueli
Anzeige
AW: Frage an EtoPHG
22.11.2006 09:12:51
Marko
hallo hansueli,
hatte selbst nachtschicht und konnte mich da auch erst heut morgen drumm kümmern!
jepp, das hab ich verstanden...
danke dir :-) und nun raucht mir langsam der kopf und werd mal schlafen
gruß marko

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige