Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1572to1576
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

Arbeitszeit: Kopieren, Zeile finden, einsetzen

Arbeitszeit: Kopieren, Zeile finden, einsetzen
04.08.2017 15:45:15
Ingo
Hallo Excel Spezialisten,
ich würde gerne für mich mal meine Arbeitszeiten erfassen. Im WS Input habe ich einen Zweizeiler:
Datum (Now()) | Von (Uhrzeit) | Bis (Uhrzeit) | Pause (Zeit) |Stunden (berechnete Zeit)
Im WS List habe ich einen Table, der genau so aufgebaut ist, aber für jedes Datum in 2017 eine Zeile hat.
Ich möchte jetzt gerne im WS Input für zB heute die Werte eintragen und dann per Macro die Range kopieren, im WS List die passende Zeile aufgrund des Datums finden, und dort die kopieret Range eintragen lassen.
geht das?
Beste Grüße
Ingo
https://www.herber.de/bbs/user/115243.xlsm

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Arbeitszeit: Kopieren, Zeile finden, einsetzen
04.08.2017 16:08:33
ChrisL
Hi Ingo
Ein einfacher SVERWEIS hätte es vermutlich auch getan, aber hier die Makrovariante (ohne Fehlerhandling):
Sub t()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim lngZeile As Long
Set WS1 = Worksheets("List")
Set WS2 = Worksheets("Input")
With WS1
lngZeile = Application.Match(CDbl(Int(WS2.Range("C3"))), .Columns(3), 0)
.Range(.Cells(lngZeile, 6), .Cells(lngZeile, 22)).Copy WS2.Range("E3")
End With
End Sub
cu
Chris
AW: Arbeitszeit: Kopieren, Zeile finden, einsetzen
04.08.2017 21:37:40
Ingo
Hallo Chris,
zunächst mal vielen Dank. So ganz funktioniert das aber nioch nicht.
Aktuell werden nur im WS Input die Rahmen um ein Feld nach rechts versetzt. anonsten passiert nichts.
Wenn ich die Zeiten für den 04/08/2017 eingebe soll die Range aus Input(E3:U3) kopiert werden. Die kopierte Range soll dann in das WS List eingefügt werden, und zwar in das Feld F218. Das heißt das Macro soll bitte erst nach dem 04/08/2017 suchen und dann die Range in die richtige Zeile kopieren.
Geht das?
Beste Grüße
Ingo
Anzeige
AW: Arbeitszeit: Kopieren, Zeile finden, einsetzen
05.08.2017 09:36:23
hary
Moin
Da hat Chris die Blattzuweisung falsch gesetzt.
Dim WS1 As Worksheet, WS2 As Worksheet
Dim lngZeile As Long
Set WS1 = Worksheets("List")
Set WS2 = Worksheets("Input")
With WS1
lngZeile = Application.Match(CLng(WS2.Range("C3")), .Columns(3), 0)
WS2.Range(WS2.Cells(3, 5), WS2.Cells(3, 21)).Copy
.Range("F" & lngZeile).PasteSpecial Paste:=xlValues
End With

In Blatt "List" in SpalteE brauchst du keine WAHL Formel. es reicht eine einfache Formel und Benutzerdefiniertes Format.



List
 CDE
301.01.20171Sonntag

verwendete Formeln
Zelle Formel Bereich R1C1 für Add In
D3=KALENDERWOCHE(C3;1)  =WEEKNUM(RC[-1],1)
E3=C3  =RC[-2]

Zahlenformate
Zelle Format Wert
C3 'TT.MM.JJJJ42736
E3 'TTTT42736
Zellen mit Format Standard werden nicht dargestellt

http://excel-inn.de/dateien/vba_beispiele/tabellenanzeige_in_html_addin.zip
http://hajo-excel.de/tools.htm
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007
Add-In-Version 14.02 einschl 64 Bit

gruss hary
Anzeige
AW: Arbeitszeit: Kopieren, Zeile finden, einsetzen
05.08.2017 10:52:11
Ingo
Hallo Hary,
hallo Chris,
jetzt funktioniert es. Vielen Dank. Und auch vielen Dank für die Verbesserungen auf dem WS List.
Ich wünsche euch allen ein schönes Wochenende
Best Grüße
Ingo

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige