ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   how to calculate divisors of a number (https://www.excelbanter.com/excel-discussion-misc-queries/270556-how-calculate-divisors-number.html)

Rasoul Khoshravan

how to calculate divisors of a number
 
Is there any command or macro to give the divisors of a number in
Excel?

Hans Terkelsen

how to calculate divisors of a number
 

"Rasoul Khoshravan" wrote in message
...
Is there any command or macro to give the divisors of a number in
Excel?


Hi Rasoul.

A step in the right direction is this formula, which gives TRUE if A1 is a prime:
=OR(A1=2,A1=3,AND(A1/ROW(INDIRECT("2:"&INT(SQRT(A1))))<INT(A1/ROW(INDIRECT("2:"&INT(SQRT(A1)))))))

I don't know who to credit for the formula.

To find the divisors of A1, A2 ... maybe a sub like this:

DefDbl A-Z
Sub Primefactors()
Application.ScreenUpdating = False
While VarType(Selection) = 5
t = Selection
For f = 2 To Sqr(t)
While Int(t / f) = t / f
ActiveCell.Offset(0, 1).Select
Selection = f
t = t / f
Wend
If f Sqr(t) Then Exit For
Next
If t 1 Then
ActiveCell.Offset(0, 1).Select
Selection = t
End If
ActiveCell.Offset(1, 1 - ActiveCell.Column).Select
Wend
Application.ScreenUpdating = True
End Sub

HansT


Hans Terkelsen

how to calculate divisors of a number
 
Rasoul,

a correction to the formula:
It must be a matrix formula, which means it shold be accepted with Ctrl+Shift+Enter,
so that the formula looks like
{=OR(A1=2,A1=3,AND(A1/ROW(INDIRECT("2:"&INT(SQRT(A1))))<INT(A1/ROW(INDIRECT("2:"&INT(SQRT(A1)))))))}

Sorry, Hans T.
_______________________________

"Hans Terkelsen" <dk wrote in message ...

"Rasoul Khoshravan" wrote in message
...
Is there any command or macro to give the divisors of a number in
Excel?


Hi Rasoul.

A step in the right direction is this formula, which gives TRUE if A1 is a prime:
=OR(A1=2,A1=3,AND(A1/ROW(INDIRECT("2:"&INT(SQRT(A1))))<INT(A1/ROW(INDIRECT("2:"&INT(SQRT(A1)))))))

I don't know who to credit for the formula.

To find the divisors of A1, A2 ... maybe a sub like this:

DefDbl A-Z
Sub Primefactors()
Application.ScreenUpdating = False
While VarType(Selection) = 5
t = Selection
For f = 2 To Sqr(t)
While Int(t / f) = t / f
ActiveCell.Offset(0, 1).Select
Selection = f
t = t / f
Wend
If f Sqr(t) Then Exit For
Next
If t 1 Then
ActiveCell.Offset(0, 1).Select
Selection = t
End If
ActiveCell.Offset(1, 1 - ActiveCell.Column).Select
Wend
Application.ScreenUpdating = True
End Sub

HansT


Rasoul Khoshravan

how to calculate divisors of a number
 
Dear Hans
Thanks for your solution. Let me check it and come here again if it is
necessary.
Sorry for late reply. I was expecting a notification in my email but
it seams whether it is not same here or I haven't set it.


All times are GMT +1. The time now is 04:14 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com