Combine Row and Column Data

nannerb22

New Member
Joined
Jul 7, 2017
Messages
2
Hello all,

I tried searching for a thread that addresses this question, but I was not able to locate one. I may not have worded my search correctly.

I receive a hospital's accounting trial balance that has hospital department numbers as row headers across the row 1 and account type numbers in column A. What I want to do is the following:

1. Combine each department number with each account type number.
2. Combine each department name with each account type name.
3. Pull the balance where the department number and account type number intersect.

See below for a visual example that is likely easier to understand.

What I receive:
10203040
AdministrationSurgeryLaboratoryRadiology
6000Salaries200,000150,000100,00075,000
7000FICA Tax25,00015,00010,0007,500
8000Benefits10,0005,00002,000

<tbody>
</tbody>









The result I would like to get to:

Account NumberAccount NameAccount Balance
10-6000Administration - Salaries200,000
10-7000Administration - FICA Taxes25,000
10-8000Administration - Benefits10,000
20-6000Surgery - Salaries150,000
20-7000Surgery - FICA Tax15,000
20-8000Surgery - Benefits5,000
30-6000Laboratory - Salaries100,000
30-7000Laboratory - FICA Tax10,000
30-8000Laboratory - Benefits0
40-6000Radiology - Salaries75,000
40-7000Radiology - FICA Tax7,500
40-8000Radiology - Benefits2,000

<tbody>
</tbody>






















I'm trying to find the least time consuming way to get to the end result above. I would be open to solutions using formulas, VBA (very little experience, but will work with this if there is a solution using VBA), or Power Query.

OS: Windows 7
Excel : Excel 2010 with Power Query Addin installed

Thank you.
Brennan
 

Excel Facts

VLOOKUP to Left?
Use =VLOOKUP(A2,CHOOSE({1,2},$Z$1:$Z$99,$Y$1:$Y$99),2,False) to lookup Y values to left of Z values.
Try this for results on sheet2.
NB:- I have assumed that the first "Salary", "6000" start in "A3".
Code:
[COLOR=navy]Sub[/COLOR] MG13Jan27
[COLOR=navy]Dim[/COLOR] Ray [COLOR=navy]As[/COLOR] Variant, ac [COLOR=navy]As[/COLOR] [COLOR=navy]Long,[/COLOR] n [COLOR=navy]As[/COLOR] [COLOR=navy]Long,[/COLOR] c [COLOR=navy]As[/COLOR] [COLOR=navy]Long[/COLOR]
Ray = Range("C1").CurrentRegion
ReDim nray(1 To UBound(Ray, 1) * UBound(Ray, 2), 1 To 3)
nray(1, 1) = "Account Number": nray(1, 2) = "Account Name": nray(1, 3) = "Account Balance"
c = 1
[COLOR=navy]For[/COLOR] ac = 3 To UBound(Ray, 2)
   [COLOR=navy]For[/COLOR] n = 3 To UBound(Ray, 1)
        c = c + 1
        nray(c, 1) = Format(Ray(1, ac) & "_" & Ray(n, 1), "@")
        nray(c, 2) = Ray(2, ac) & "_" & Ray(n, 2)
        nray(c, 3) = Ray(n, ac)
    [COLOR=navy]Next[/COLOR] n
[COLOR=navy]Next[/COLOR] ac
[COLOR=navy]With[/COLOR] Sheets("Sheet2").Range("A1").Resize(c, 3)
    .Value = nray
    .Borders.Weight = 2
    .Columns.AutoFit
[COLOR=navy]End[/COLOR] [COLOR=navy]With[/COLOR]
[COLOR=navy]End[/COLOR] [COLOR=navy]Sub[/COLOR]
Regards Mick
 
Last edited:
Upvote 0

Forum statistics

Threads
1,214,419
Messages
6,119,389
Members
448,891
Latest member
tpierce

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