Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 244
Default Dim i,j,k As Integer

If you write:
Dim i,j,k As Integer

does that mean that only one of the variables actually is declared as an
Integer (i or k) and the are declared as Variant?

Also is it true that Integer no longer really exists in VBA (at least v.
6.3)? I am told that an Integer is converted to a Long so it is better to use
Long to begin with since the program does not have to convert the Integer to
Long.

Please ansewer these questions only if you are positive (I do not mean to
come off as rude but I need to be sure). Thanks very much in advance!
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,441
Default Dim i,j,k As Integer

Arne,

With this:
Dim i,j,k As Integer


i and j are variants, k is an integer.

Use

Dim i As Integer
Dim j As Integer
Dim k As Integer

To check your last point, if this errors on the last line, then i is truly an integer

Sub Test()
Dim i As Integer
Dim j As Long
j = 654321
j = 654321
End Sub


HTH,
Bernie
MS Excel MVP


"Arne Hegefors" wrote in message
...
If you write:
Dim i,j,k As Integer

does that mean that only one of the variables actually is declared as an
Integer (i or k) and the are declared as Variant?

Also is it true that Integer no longer really exists in VBA (at least v.
6.3)? I am told that an Integer is converted to a Long so it is better to use
Long to begin with since the program does not have to convert the Integer to
Long.

Please ansewer these questions only if you are positive (I do not mean to
come off as rude but I need to be sure). Thanks very much in advance!



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 244
Default Dim i,j,k As Integer

Thanks alot for your help! Regarding the last question I had your cod edoes
not answer the question. I am told that vb automatically converts Integer to
Long. Thus, any variable declared as Integer automatically transforms into
Long implying that it can take any data that a variable declared as Long can
do. The only difference is that the program needs to convert Integer to Long
i.e. you do not notice the conversion it is just a waste of program memory
capacity. If anyone knows if this is true or not please let me know! Thanks
alot in advance!

"Bernie Deitrick" skrev:

Arne,

With this:
Dim i,j,k As Integer


i and j are variants, k is an integer.

Use

Dim i As Integer
Dim j As Integer
Dim k As Integer

To check your last point, if this errors on the last line, then i is truly an integer

Sub Test()
Dim i As Integer
Dim j As Long
j = 654321
j = 654321
End Sub


HTH,
Bernie
MS Excel MVP


"Arne Hegefors" wrote in message
...
If you write:
Dim i,j,k As Integer

does that mean that only one of the variables actually is declared as an
Integer (i or k) and the are declared as Variant?

Also is it true that Integer no longer really exists in VBA (at least v.
6.3)? I am told that an Integer is converted to a Long so it is better to use
Long to begin with since the program does not have to convert the Integer to
Long.

Please ansewer these questions only if you are positive (I do not mean to
come off as rude but I need to be sure). Thanks very much in advance!




  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 2,489
Default Dim i,j,k As Integer

Have a read of the discussion
http://www.dailydoseofexcel.com/arch...ng-vs-integer/

Cheers
Andy

Arne Hegefors wrote:
Thanks alot for your help! Regarding the last question I had your cod edoes
not answer the question. I am told that vb automatically converts Integer to
Long. Thus, any variable declared as Integer automatically transforms into
Long implying that it can take any data that a variable declared as Long can
do. The only difference is that the program needs to convert Integer to Long
i.e. you do not notice the conversion it is just a waste of program memory
capacity. If anyone knows if this is true or not please let me know! Thanks
alot in advance!

"Bernie Deitrick" skrev:


Arne,

With this:

Dim i,j,k As Integer


i and j are variants, k is an integer.

Use

Dim i As Integer
Dim j As Integer
Dim k As Integer

To check your last point, if this errors on the last line, then i is truly an integer

Sub Test()
Dim i As Integer
Dim j As Long
j = 654321
j = 654321
End Sub


HTH,
Bernie
MS Excel MVP


"Arne Hegefors" wrote in message
...

If you write:
Dim i,j,k As Integer

does that mean that only one of the variables actually is declared as an
Integer (i or k) and the are declared as Variant?

Also is it true that Integer no longer really exists in VBA (at least v.
6.3)? I am told that an Integer is converted to a Long so it is better to use
Long to begin with since the program does not have to convert the Integer to
Long.

Please ansewer these questions only if you are positive (I do not mean to
come off as rude but I need to be sure). Thanks very much in advance!





--

Andy Pope, Microsoft MVP - Excel
http://www.andypope.info
  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 415
Default Dim i,j,k As Integer

Arne,
If, for some reason, you want to limit your values to the max range of an
Integer, you are still free to use them.
However, since the underlying system is 32 bit, unless you are using a very
old or very new system, you may as well forego any conversion and use the
"native" numeric data type.
Dim i as long
for i=1 to 10
....etc

NickHK

"Arne Hegefors" ...
Thanks alot for your help! Regarding the last question I had your cod
edoes
not answer the question. I am told that vb automatically converts Integer
to
Long. Thus, any variable declared as Integer automatically transforms into
Long implying that it can take any data that a variable declared as Long
can
do. The only difference is that the program needs to convert Integer to
Long
i.e. you do not notice the conversion it is just a waste of program memory
capacity. If anyone knows if this is true or not please let me know!
Thanks
alot in advance!

"Bernie Deitrick" skrev:

Arne,

With this:
Dim i,j,k As Integer


i and j are variants, k is an integer.

Use

Dim i As Integer
Dim j As Integer
Dim k As Integer

To check your last point, if this errors on the last line, then i is
truly an integer

Sub Test()
Dim i As Integer
Dim j As Long
j = 654321
j = 654321
End Sub


HTH,
Bernie
MS Excel MVP


"Arne Hegefors" wrote in message
...
If you write:
Dim i,j,k As Integer

does that mean that only one of the variables actually is declared as
an
Integer (i or k) and the are declared as Variant?

Also is it true that Integer no longer really exists in VBA (at least
v.
6.3)? I am told that an Integer is converted to a Long so it is better
to use
Long to begin with since the program does not have to convert the
Integer to
Long.

Please ansewer these questions only if you are positive (I do not mean
to
come off as rude but I need to be sure). Thanks very much in advance!






Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
How do I add an integer to an existing integer? Aaron Excel Worksheet Functions 3 December 17th 09 09:46 PM
integer integer format Excel Worksheet Functions 1 May 3rd 07 06:45 PM
traverse until non integer evil baby[_6_] Excel Programming 1 March 1st 06 04:00 PM
Get next Integer value Stuart[_5_] Excel Programming 7 February 16th 04 04:48 AM
Not seeing integer Martin Wheeler Excel Programming 1 September 4th 03 03:29 AM


All times are GMT +1. The time now is 04:42 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"