Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1364to1368
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
VBA - zählen wie oft Zelle kopiert wurde
23.06.2014 13:10:23
tobwo
Hallo liebe Profis,
ich stehe vor folgendem Problem: Kann ich per VBA erkennen, wie oft eine Zelle kopiert (CTRL+C) wurde und diese Zahl ein einer Zelle aktuell - idealerweise nach "Kopier-Tag" abbilden?
In Spalte C (C2:C32) sind die Werte.
Ab Spalte F (Datum 01.01. - 31.12.) möchte ich sehen, wie oft der Wert am jeweiligen Tag kopiert wurde.
Bsp.:
C2 wurde am 16.06. 15x kopiert, dann steht in FP2 (=16.06.) 15.
C2 wurde am 17.06. 8x kopiert, dann steht in FQ2 8
usw.
Geht sowas...?
Freu mich auf Feedback

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

Betreff
Datum
Anwender
Anzeige
AW: VBA - zählen wie oft Zelle kopiert wurde
23.06.2014 16:17:41
Daniel
Hi
direkt mit Zellen schwierig.
der einfachste Workaround wäre wohl, das Blatt generell auszublenden und die Werte in einer Userform mit Listbox anzuzeigen. Der Anwender wählt dann einen Wert aus und das Makro des Buttons kopiert dann den Wert und macht die entsprechende Eintragung
Gruß Daniel

AW: VBA - zählen wie oft Zelle kopiert wurde
23.06.2014 17:49:58
tobwo
hmm, ich kann die Werte leider nicht ausblenden und über ne Listbox arbeiten, da ich auch Ergänzungen in anderen Spalten habe und nicht an jedem Tag jeder Wert kopiert werden soll...
Trotzdem DANKE für die Idee, vielleicht hat ja noch jemand anders eine Lösung?

Anzeige
AW: VBA - zählen wie oft Zelle kopiert wurde
24.06.2014 10:37:35
Nepumuk
Hallo,
teste mal (die Anzahl der Kopiervorgänge wird in Spalte O eingetragen. Die Spalte und den Tabellennamen im Open-Event musst du natürlich anpassen).
' **********************************************************************
' Modul: DieseArbeitsmappe Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Workbook_Open()
    If ActiveSheet Is Tabelle1 Then _
        Set Tabelle1.LastSelection = Selection
End Sub

' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private mobjLastSelection As Range

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim lngIndex As Long
    Dim blnNotEqual As Boolean
    If Not LastSelection Is Nothing Then
        If Target.Count = LastSelection.Count Then
            For lngIndex = 1 To Target.Count
                If Target(lngIndex).Value <> _
                    LastSelection(lngIndex).Value Then
                    blnNotEqual = True
                    Exit For
                End If
            Next
            If Not blnNotEqual Then
                Application.EnableEvents = False
                Cells(LastSelection.Row, 15).Value = _
                    Cells(LastSelection.Row, 15).Value + 1
                Application.EnableEvents = True
            End If
        End If
    End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Application.CutCopyMode = 0 Then Set LastSelection = Selection
End Sub

Public Property Get LastSelection() As Range
    Set LastSelection = mobjLastSelection
End Property

Public Property Set LastSelection(ByRef probjLastSelection As Range)
    Set mobjLastSelection = probjLastSelection
End Property

Gruß
Nepumuk

Anzeige
AW: VBA - zählen wie oft Zelle kopiert wurde
25.06.2014 12:23:46
tobwo
Hallo Nepumuk,
super, danke, das funktioniert!
ABER: Nur, wenn ich den Wert in der selben Datei einfüge.
Da ich aber in ein anderes Programm kopiere (CTRL+C) zählt es mir den Kopiervorgang nicht (sondern nur das Einfügen).
Gibt's dafür vielleicht auch eine Möglichkeit?

AW: VBA - zählen wie oft Zelle kopiert wurde
25.06.2014 17:18:03
Nepumuk
Hallo,
du kopierst nur aus einer einzigen Tabelle? Alle Mappen in welche du die Zeilen einfügst sind in der gleichen Excelinstanz geöffnet wie die Quellmappe?
Gruß
Nepumuk

AW: VBA - zählen wie oft Zelle kopiert wurde
25.06.2014 18:01:13
tobwo
Ziel ist, aus unterschiedlichen Tabellenblättern einer Datei in eine komplett andere Software zu kopieren.
Deswegen erscheint für mich nur die Möglichkeit zu "zählen", wie oft kopiert und nicht wie oft eingefügt wurde...

Anzeige
AW: VBA - zählen wie oft Zelle kopiert wurde
25.06.2014 18:56:43
Nepumuk
Hallo,
für "in eine komplett andere Software" ? . Das hättest du aber gleich schreiben können, dann hätte ich mir den Code sparen können. Schade wenn eine halbe Stunde Arbeit einfach in die Tonne getreten wird.
Da sehe ich eigentlich nur die Möglichkeit den Tastaturstream zu überwachen. Funktioniert aber nur wenn die "andere Software" kein Kontextmenü zum Einfügen der Zwischenablage hat, ansonsten müssten auch noch alle Childwindows der Anwendung überwacht werden.
Viel Spaß dabei.
Gruß
Nepumuk

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige