A VBA module needed to transfer data from one sheet to another

Qzav

New Member
Joined
Mar 24, 2021
Messages
3
Office Version
  1. 365
Platform
  1. Windows
Hello,

I need to transfer data from one worksheet to another. I would be able to do it in a non-VBA way, but it results in some manual work still remaining. And VBA is sadly above my competence at the moment. Thanks for any help in advance!

First sheet is an automatically generated daily workers' sign in/sign out sheet (this will be our data source sheet):
defaultest.xlsx
BCDEFGHIJKLMNOPQRSUVWXYZ
10Mar, 20Mar, 22Mar, 23Mar, 24Mar, 25Mar, 26
11SaturdayMondayTuesdayWednesdayThursdayFriday
12ContractorFirst NameLast NameEmployee IDTradeIndividual TypeProject NameProject RefWeek BeginningNormalOT1NormalOT1NormalOT1NormalOT1NormalOT1NormalOT1
13John WadeLabourer20/03/20216.620.009.000.009.000.009.000.009.000.009.000.00
14RickHolmesFixer20/03/20216.580.009.000.009.000.009.000.009.000.009.000.00
15RobertHicksFixer20/03/20219.000.009.000.008.980.009.000.009.000.00
16JeffPendoFixer20/03/20216.630.009.000.009.000.009.000.009.000.009.000.00
17NickWalshFixer20/03/20219.000.009.000.009.000.009.000.009.000.00
18CharlieJeffersonFixer20/03/20216.630.009.000.009.000.009.000.009.000.009.000.00
19ChrisWallerFixer20/03/20219.000.009.000.009.000.009.000.009.000.00
20TomHendersonFixer20/03/20216.570.009.000.009.000.009.000.009.000.009.000.00
21ColinJonesLabourer20/03/20216.530.009.000.009.000.009.000.009.000.009.000.00
22BobWillsonLabourer20/03/20216.530.009.000.009.000.009.000.009.000.009.000.00
23IanLeeLabourer20/03/20216.580.009.000.009.000.009.000.009.000.009.000.00
24PaulKirkSupervisor20/03/20216.670.009.000.009.000.00
25ZacDowneySupervisor20/03/20216.150.009.000.009.000.009.000.009.000.009.000.00
Daily Sheet


The other one is a weekly sheet that is used for accounting later on (this will be data destination sheet):
defaultest.xlsx
ABCDEFGHIJKLMNO
19ID CODETRADENAMEQUANT (hours)TOTALRATE TOTAL
20SSMTWTF
22
23SHEET TOTALTotal hrs
Weekly Sheet


Each operative needs to be extracted along with his trade and working times for each day of the week (matching colors show source/destination). The amount of workers vary week to week. Naturally, extra rows for each worker need to be created in the destination worksheet. 'NAME' column in the destinaton sheet = conjoined 'First name' and 'Last name' columns from the source sheet.

I know merged cells shouldn't be used, but these are pre-set forms. Let me know if it's not doable with merged cells.

Bonus: workers in the destination worksheet need to be arranged alphabetically by TRADE first and by NAMES second, e.g. all the 'fixers' need to be in the same cluster, but sorted alphabetically among themselves, then followed by alphabetically sorted 'labours' and 'supervisors'.
 

Excel Facts

How to find 2nd largest value in a column?
MAX finds the largest value. =LARGE(A:A,2) will find the second largest. =SMALL(A:A,3) will find the third smallest
How do you handles OT on Weekly sheet?
 
Upvote 0

Forum statistics

Threads
1,224,823
Messages
6,181,181
Members
453,022
Latest member
Mohamed Magdi Tawfiq Emam

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top