# Excel/Expert Profile

Portugal
Available
##### Expertise

I will be able to answer any question on Excel and Visual Basic for Applications - class modules, recursive procedures and functions are my favourite

##### Past/Present Clients

Several readers of my Books think they are useful.

### Recent Reviews from Users

K = Knowledgeability    C = Clarity of Response    P = Politeness
Malcolm08/14/16101010Many many thanks Adelaide - perfect!!
Al12/13/15101010Thank you for your candor. I have .....
ali07/27/15101010Thanks a lot. Good result
jaybe02/20/15101010Big thump up.
Prashant S Akerkar02/01/15101010Dear Adelaide Thanks. Thanks & Regards, Prashant .....

#### 2016-08-11 VBA:

Hi Malcolm  How are you?    Please try the following:    Sub CopyAbove()  Dim R As Range  Set R = ActiveSheet.Range("A:A")  I = 2  Do While R.Cells(I, 1) <> "END"     If IsEmpty(R.Cells(I, 1)) = True Then

#### 2016-06-08 formula to find duration and how to meet specific criter:

Hi Winson  How are you?    Assume you have type the earlier date in A1 and the leter date in B1    1. Number of days between the two dates, type in C1  =B1-A1  2. Number of years between the two dates

#### 2016-01-01 Unprotect workbook with variables:

Hi Al    How are you?    Please try the following    Sub protectsheet()  For I = 1 To 30  y = "ABC" + LTrim(Str(I))  Worksheets(I).Protect y  Next I  End Sub    Sub unprotectsheet()  For I = 1 To 30  Worksheets(I)

#### 2015-12-11 Transpose with a twist:

Hi Al  How are you?    Your question may take too long for me to solve it, However, I would start doing the following:  1. Sort te data by column A  2. Make an index table for each value of column A (

#### 2015-05-06 Two macros I hope you could help me with.:

Hi Barry    How are you?      The letter I is a variable and could not be replaced with 1 (one). I takes the value 1 and every time the loop runs gets the value I=I+1, i.e., I is invcremented by one immediately