How to find the days difference between two dates [closed] - vba

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
I have been working on finding the Days difference between the dates found in Column A and column B. The dates in both columns are not constant thus I would need a code that would allow to read both dates in column A and B and find the Days difference between those two dates until the last row is empty.
Is there any code that I could use to find the Days difference between column A and B with a range of more than 500 rows?

Instead of using vba just enter the formula for the first row on C1 :
=ROUND(a1,0)-ROUND(b1,0)
Then just the formula to the end of exisiting rows.
If you insist using vba code use the simple code below:
Dim LastRow As Long
LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
Range("c1").Select
ActiveCell.FormulaR1C1 = "=ROUND(RC[-1],0)-ROUND(RC[-2],0)"
Range("c1").AutoFill Destination:=Range("C1:C" & LastRow)
End Sub

Related

Excel counting rows that are not empty in Vlookup value [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 4 years ago.
Improve this question
I'm trying to count the total number of cells that have values for the row that I'll be looking up using their name. I have a different sheet for looking up the value I tried COUNTA and VLOOKUP. Is there any way to combine these two so I'll end up with the correct result?
Please see screenshot.
Thank you!
Use INDEX(,MATCH()):
=COUNTA(INDEX('Sheet1'!C:X,MATCH("Jessel Rayes",'Sheet1'!A:A,0),0))
Here is a vba function that looks up the value you define (first input) in a specified range (second input) and then returns the number of empty cells in the same row right from this cell for a specified amount of columns (third input).
Function TLookupT(Value As Variant, arr As Range, column As Long)
x = 0
For Each Cell In arr
If Cell.Value = Value Then
For i = 1 To column - 1
If Cell.Offset(0, i) = "" Then
x = x + 1
End If
Next i
End If
Next Cell
TLookupT = x
End Function

Cut n cells and insert to below row using excel vba [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I am trying cut 4 adjacent cells and insert a new row below and paste it on a new row.
My input is similar to
I have 4 columns Addr,Phone,Count,Amount. Some Rows of my excel sheet contains multiple n numbers of entries. I want to cut multiple of 4 cells and insert a new row below and paste it on.
The output would be similar to
I tried with transform function but unable to produce the expected result.
How can I do this with vba code or any excel functions
Here is the code its exactly work with your requirement
Sub Narasappa()
For i = 2 To 1000
If ThisWorkbook.Worksheets(5).Cells(i, 2) = "" Then
Exit For
End If
For j = 6 To 1000 Step 4
If ThisWorkbook.Worksheets(5).Cells(i, j).Value = "" Then
Exit For
Else
ThisWorkbook.Worksheets(5).Cells(i, j).Resize(, 4).Cut
ThisWorkbook.Worksheets(5).Range("B" & i + 1).Insert xlShiftDown
End If
Next
Next
End Sub

Intersect the cells value in column with cells value in row? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I am new doing this and desperate need help
I have a group of value in a column and the same group of value in a row, what I need is a VBA code that select the cells where the column and the row intersect.
Ex.
Col A has values from A2 to A10 and the same values repeat in row 1 from B1:J1
I need a VBA code that select the cell where rowX and ColX intersect.
Thanks
Sub Highlight_Intersections()
'tested
Dim c as Range
For Each c in Range("B2:J10") 'you supply address
If Cells(c.Row,1).Value = Cells(2,c.Column).Value Then
c.Interior.ColorIndex = 6 '(Yellow)
End If
Next c
End Sub

How to average every 3rd row in excel using VBA [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 5 years ago.
Improve this question
I have column I with "item score". I would like to average every third row and return the value in Column A, which I have labeled "Overall Survey Score".
So the average of I2:I4 would be displayed in A2. The average of I5:I7 would be displayes in A5 and so on until the last row of data available.
I would like stay away from a formula in a cell and do this using VBA. Any help would be greatly appreciated.
Sub getavgs()
Dim i As Integer
For i = 1 To 27 Step 3
ActiveWorkbook.Worksheets("Sheet1").Range("A" & i).Value = _
(ActiveWorkbook.Worksheets("Sheet1").Range("L" & i).Value + _
ActiveWorkbook.Worksheets("Sheet1").Range("L" & i + 1).Value + _
ActiveWorkbook.Worksheets("Sheet1").Range("L" & i + 2).Value) / 3
Next i
End Sub
You can use a formula, like so. In I2 onwards
=IF(OR(ROW()-2=0,MOD(ROW()-2,3)=0),AVERAGE(OFFSET(I2,0,0,3,1)),"")

Excel VBA - Number format seems unchangeable [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 8 years ago.
Improve this question
I have an excel table which is straight from a database. Its first column contain dates but are not formatted as dates. They are written as : 03/01/2014 for example.
So I'm trying to comparing values from some cells and the problem is people type dates as : 3/01/2014. When comparing the values no value is returned. I'm using the range.find() command. So I tried to change the format of the date column in the table but it didn't change at all. However if I try to edit a cell and just press enter it becomes a normal date. I wonder if there is a way I can convert all those rigid dates in the table to normal excel dates so that the comparison routine can work.
Thanks you.
Select the cells whose dates you wish to convert and run this small macro:
Sub DateSetter()
Dim r As Range, d As Date, st As String
For Each r In Selection
st = r.Text
If InStr(st, "/") <> 0 Then
ary = Split(st, "/")
d = DateSerial(CInt(ary(2)), CInt(ary(1)), CInt(ary(0)))
r.Clear
r.Value = d
r.NumberFormat = "m/d/yyyy"
End If
Next r
End Sub
It should perform the conversion, but ignore zeros, blanks, and other junk.