PC Review


Reply
Thread Tools Rate Thread

Defining variables

 
 
Pawan
Guest
Posts: n/a
 
      21st Nov 2009
Hi

I have few variables which have default value of 0. This value will change
during macro execution. Is there any way to declare 0 value to these
variables while defining those at the beginning of the code? Means when we
define variable as Dim cnt as integer, can I define 0 value there itself?

Thank You


 
Reply With Quote
 
 
 
 
Mike H
Guest
Posts: n/a
 
      21st Nov 2009
Hi,

When you dim your variable by default it is set as nothing which for an
integer variable is the same as zero which can be demonstrated with this bit
of code

Dim cnt As Integer
MsgBox cnt + 10

If you try this you will find the message box displays 10 so cnt was zero

Mike

"Pawan" wrote:

> Hi
>
> I have few variables which have default value of 0. This value will change
> during macro execution. Is there any way to declare 0 value to these
> variables while defining those at the beginning of the code? Means when we
> define variable as Dim cnt as integer, can I define 0 value there itself?
>
> Thank You
>
>

 
Reply With Quote
 
Pawan
Guest
Posts: n/a
 
      21st Nov 2009
This is correct. Here by 0 I want to say any value. Means suppose if I want
to assign default value of 2 (or any other value) to my variable, then is
there any way to assign it when we declare the variable? We can assign it in
separate statement like cnt = 2, but I want to assign it I at the same time
we declare the variable.

Thank You

"Mike H" wrote:

> Hi,
>
> When you dim your variable by default it is set as nothing which for an
> integer variable is the same as zero which can be demonstrated with this bit
> of code
>
> Dim cnt As Integer
> MsgBox cnt + 10
>
> If you try this you will find the message box displays 10 so cnt was zero
>
> Mike
>
> "Pawan" wrote:
>
> > Hi
> >
> > I have few variables which have default value of 0. This value will change
> > during macro execution. Is there any way to declare 0 value to these
> > variables while defining those at the beginning of the code? Means when we
> > define variable as Dim cnt as integer, can I define 0 value there itself?
> >
> > Thank You
> >
> >

 
Reply With Quote
 
Mike H
Guest
Posts: n/a
 
      22nd Nov 2009
AFAIK there's no way to do that in a single line, you must dim your variable
and can then define a value for it

Dim cnt As Integer
cnt = 6

Mike

"Pawan" wrote:

> This is correct. Here by 0 I want to say any value. Means suppose if I want
> to assign default value of 2 (or any other value) to my variable, then is
> there any way to assign it when we declare the variable? We can assign it in
> separate statement like cnt = 2, but I want to assign it I at the same time
> we declare the variable.
>
> Thank You
>
> "Mike H" wrote:
>
> > Hi,
> >
> > When you dim your variable by default it is set as nothing which for an
> > integer variable is the same as zero which can be demonstrated with this bit
> > of code
> >
> > Dim cnt As Integer
> > MsgBox cnt + 10
> >
> > If you try this you will find the message box displays 10 so cnt was zero
> >
> > Mike
> >
> > "Pawan" wrote:
> >
> > > Hi
> > >
> > > I have few variables which have default value of 0. This value will change
> > > during macro execution. Is there any way to declare 0 value to these
> > > variables while defining those at the beginning of the code? Means when we
> > > define variable as Dim cnt as integer, can I define 0 value there itself?
> > >
> > > Thank You
> > >
> > >

 
Reply With Quote
 
Pawan
Guest
Posts: n/a
 
      22nd Nov 2009
Ok. Thanks Mike

"Mike H" wrote:

> AFAIK there's no way to do that in a single line, you must dim your variable
> and can then define a value for it
>
> Dim cnt As Integer
> cnt = 6
>
> Mike
>
> "Pawan" wrote:
>
> > This is correct. Here by 0 I want to say any value. Means suppose if I want
> > to assign default value of 2 (or any other value) to my variable, then is
> > there any way to assign it when we declare the variable? We can assign it in
> > separate statement like cnt = 2, but I want to assign it I at the same time
> > we declare the variable.
> >
> > Thank You
> >
> > "Mike H" wrote:
> >
> > > Hi,
> > >
> > > When you dim your variable by default it is set as nothing which for an
> > > integer variable is the same as zero which can be demonstrated with this bit
> > > of code
> > >
> > > Dim cnt As Integer
> > > MsgBox cnt + 10
> > >
> > > If you try this you will find the message box displays 10 so cnt was zero
> > >
> > > Mike
> > >
> > > "Pawan" wrote:
> > >
> > > > Hi
> > > >
> > > > I have few variables which have default value of 0. This value will change
> > > > during macro execution. Is there any way to declare 0 value to these
> > > > variables while defining those at the beginning of the code? Means when we
> > > > define variable as Dim cnt as integer, can I define 0 value there itself?
> > > >
> > > > Thank You
> > > >
> > > >

 
Reply With Quote
 
K_Macd
Guest
Posts: n/a
 
      22nd Nov 2009
The only way that you can combine a dim and non-empty value is declaring an
optional parameter within a routine ie Optional 'variable' as integer = 3.

It would be a nice feature if it combined into a standalone Dim statement

Good luck

--
Ken
"Using Dbase dialects since 82"
"Started with Visicalc in the same year"


"Pawan" wrote:

> Ok. Thanks Mike
>
> "Mike H" wrote:
>
> > AFAIK there's no way to do that in a single line, you must dim your variable
> > and can then define a value for it
> >
> > Dim cnt As Integer
> > cnt = 6
> >
> > Mike
> >
> > "Pawan" wrote:
> >
> > > This is correct. Here by 0 I want to say any value. Means suppose if I want
> > > to assign default value of 2 (or any other value) to my variable, then is
> > > there any way to assign it when we declare the variable? We can assign it in
> > > separate statement like cnt = 2, but I want to assign it I at the same time
> > > we declare the variable.
> > >
> > > Thank You
> > >
> > > "Mike H" wrote:
> > >
> > > > Hi,
> > > >
> > > > When you dim your variable by default it is set as nothing which for an
> > > > integer variable is the same as zero which can be demonstrated with this bit
> > > > of code
> > > >
> > > > Dim cnt As Integer
> > > > MsgBox cnt + 10
> > > >
> > > > If you try this you will find the message box displays 10 so cnt was zero
> > > >
> > > > Mike
> > > >
> > > > "Pawan" wrote:
> > > >
> > > > > Hi
> > > > >
> > > > > I have few variables which have default value of 0. This value will change
> > > > > during macro execution. Is there any way to declare 0 value to these
> > > > > variables while defining those at the beginning of the code? Means when we
> > > > > define variable as Dim cnt as integer, can I define 0 value there itself?
> > > > >
> > > > > Thank You
> > > > >
> > > > >

 
Reply With Quote
 
Dave Peterson
Guest
Posts: n/a
 
      22nd Nov 2009
You can put two logical lines on a single physical line like this:

Dim myConst as Long: myConst = 12

Personally, I would find this more difficult to read. (Maybe it's just me.)

Pawan wrote:
>
> This is correct. Here by 0 I want to say any value. Means suppose if I want
> to assign default value of 2 (or any other value) to my variable, then is
> there any way to assign it when we declare the variable? We can assign it in
> separate statement like cnt = 2, but I want to assign it I at the same time
> we declare the variable.
>
> Thank You
>
> "Mike H" wrote:
>
> > Hi,
> >
> > When you dim your variable by default it is set as nothing which for an
> > integer variable is the same as zero which can be demonstrated with this bit
> > of code
> >
> > Dim cnt As Integer
> > MsgBox cnt + 10
> >
> > If you try this you will find the message box displays 10 so cnt was zero
> >
> > Mike
> >
> > "Pawan" wrote:
> >
> > > Hi
> > >
> > > I have few variables which have default value of 0. This value will change
> > > during macro execution. Is there any way to declare 0 value to these
> > > variables while defining those at the beginning of the code? Means when we
> > > define variable as Dim cnt as integer, can I define 0 value there itself?
> > >
> > > Thank You
> > >
> > >


--

Dave Peterson
 
Reply With Quote
 
Rick Rothstein
Guest
Posts: n/a
 
      22nd Nov 2009
It is not just you... I find that hard to read also. Plus, you are not
really saving anything significant be doing it this way either... it is
still two separate statements.

--
Rick (MVP - Excel)


"Dave Peterson" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> You can put two logical lines on a single physical line like this:
>
> Dim myConst as Long: myConst = 12
>
> Personally, I would find this more difficult to read. (Maybe it's just
> me.)
>
> Pawan wrote:
>>
>> This is correct. Here by 0 I want to say any value. Means suppose if I
>> want
>> to assign default value of 2 (or any other value) to my variable, then is
>> there any way to assign it when we declare the variable? We can assign it
>> in
>> separate statement like cnt = 2, but I want to assign it I at the same
>> time
>> we declare the variable.
>>
>> Thank You
>>
>> "Mike H" wrote:
>>
>> > Hi,
>> >
>> > When you dim your variable by default it is set as nothing which for an
>> > integer variable is the same as zero which can be demonstrated with
>> > this bit
>> > of code
>> >
>> > Dim cnt As Integer
>> > MsgBox cnt + 10
>> >
>> > If you try this you will find the message box displays 10 so cnt was
>> > zero
>> >
>> > Mike
>> >
>> > "Pawan" wrote:
>> >
>> > > Hi
>> > >
>> > > I have few variables which have default value of 0. This value will
>> > > change
>> > > during macro execution. Is there any way to declare 0 value to these
>> > > variables while defining those at the beginning of the code? Means
>> > > when we
>> > > define variable as Dim cnt as integer, can I define 0 value there
>> > > itself?
>> > >
>> > > Thank You
>> > >
>> > >

>
> --
>
> Dave Peterson


 
Reply With Quote
 
Dave Peterson
Guest
Posts: n/a
 
      22nd Nov 2009
Actually, when the code is simple, I do use multiple logical lines on a single
physical line:

Select case something
case is = aaa : somethingelse = 5
case is = bbb : somethingelse = 6
case is = ccc : somethingelse = 7
case is = ddd : somethingelse = 8
End select

But, again, it's a personal preference.

Rick Rothstein wrote:
>
> It is not just you... I find that hard to read also. Plus, you are not
> really saving anything significant be doing it this way either... it is
> still two separate statements.
>
> --
> Rick (MVP - Excel)
>
> "Dave Peterson" <(E-Mail Removed)> wrote in message
> news:(E-Mail Removed)...
> > You can put two logical lines on a single physical line like this:
> >
> > Dim myConst as Long: myConst = 12
> >
> > Personally, I would find this more difficult to read. (Maybe it's just
> > me.)
> >
> > Pawan wrote:
> >>
> >> This is correct. Here by 0 I want to say any value. Means suppose if I
> >> want
> >> to assign default value of 2 (or any other value) to my variable, then is
> >> there any way to assign it when we declare the variable? We can assign it
> >> in
> >> separate statement like cnt = 2, but I want to assign it I at the same
> >> time
> >> we declare the variable.
> >>
> >> Thank You
> >>
> >> "Mike H" wrote:
> >>
> >> > Hi,
> >> >
> >> > When you dim your variable by default it is set as nothing which for an
> >> > integer variable is the same as zero which can be demonstrated with
> >> > this bit
> >> > of code
> >> >
> >> > Dim cnt As Integer
> >> > MsgBox cnt + 10
> >> >
> >> > If you try this you will find the message box displays 10 so cnt was
> >> > zero
> >> >
> >> > Mike
> >> >
> >> > "Pawan" wrote:
> >> >
> >> > > Hi
> >> > >
> >> > > I have few variables which have default value of 0. This value will
> >> > > change
> >> > > during macro execution. Is there any way to declare 0 value to these
> >> > > variables while defining those at the beginning of the code? Means
> >> > > when we
> >> > > define variable as Dim cnt as integer, can I define 0 value there
> >> > > itself?
> >> > >
> >> > > Thank You
> >> > >
> >> > >

> >
> > --
> >
> > Dave Peterson


--

Dave Peterson
 
Reply With Quote
 
Rick Rothstein
Guest
Posts: n/a
 
      22nd Nov 2009
Yes, I think I remember you posting code like that in the past... I didn't
find it easy to read either.<g>

Just for accuracy sake, the VB editor will not allow you to space the colon
away from the statement in front of it like you show.... the editor will
move the colon so that it is adjacent to the statement in front of it which
is one of the things that make these kinds of code lines hard to read in my
opinion.

--
Rick (MVP - Excel)


"Dave Peterson" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
> Actually, when the code is simple, I do use multiple logical lines on a
> single
> physical line:
>
> Select case something
> case is = aaa : somethingelse = 5
> case is = bbb : somethingelse = 6
> case is = ccc : somethingelse = 7
> case is = ddd : somethingelse = 8
> End select
>
> But, again, it's a personal preference.
>
> Rick Rothstein wrote:
>>
>> It is not just you... I find that hard to read also. Plus, you are not
>> really saving anything significant be doing it this way either... it is
>> still two separate statements.
>>
>> --
>> Rick (MVP - Excel)
>>
>> "Dave Peterson" <(E-Mail Removed)> wrote in message
>> news:(E-Mail Removed)...
>> > You can put two logical lines on a single physical line like this:
>> >
>> > Dim myConst as Long: myConst = 12
>> >
>> > Personally, I would find this more difficult to read. (Maybe it's just
>> > me.)
>> >
>> > Pawan wrote:
>> >>
>> >> This is correct. Here by 0 I want to say any value. Means suppose if I
>> >> want
>> >> to assign default value of 2 (or any other value) to my variable, then
>> >> is
>> >> there any way to assign it when we declare the variable? We can assign
>> >> it
>> >> in
>> >> separate statement like cnt = 2, but I want to assign it I at the same
>> >> time
>> >> we declare the variable.
>> >>
>> >> Thank You
>> >>
>> >> "Mike H" wrote:
>> >>
>> >> > Hi,
>> >> >
>> >> > When you dim your variable by default it is set as nothing which for
>> >> > an
>> >> > integer variable is the same as zero which can be demonstrated with
>> >> > this bit
>> >> > of code
>> >> >
>> >> > Dim cnt As Integer
>> >> > MsgBox cnt + 10
>> >> >
>> >> > If you try this you will find the message box displays 10 so cnt
>> >> > was
>> >> > zero
>> >> >
>> >> > Mike
>> >> >
>> >> > "Pawan" wrote:
>> >> >
>> >> > > Hi
>> >> > >
>> >> > > I have few variables which have default value of 0. This value
>> >> > > will
>> >> > > change
>> >> > > during macro execution. Is there any way to declare 0 value to
>> >> > > these
>> >> > > variables while defining those at the beginning of the code? Means
>> >> > > when we
>> >> > > define variable as Dim cnt as integer, can I define 0 value there
>> >> > > itself?
>> >> > >
>> >> > > Thank You
>> >> > >
>> >> > >
>> >
>> > --
>> >
>> > Dave Peterson

>
> --
>
> Dave Peterson


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

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


Similar Threads
Thread Thread Starter Forum Replies Last Post
Defining a Range using Variables Billyruben Microsoft Excel Misc 3 2nd Dec 2008 06:31 PM
Defining Variables with Same Name in Different Worksheets =?Utf-8?B?bWh5emFr?= Microsoft Excel Misc 1 3rd May 2007 10:25 PM
VBA defining variables =?Utf-8?B?SmVmZg==?= Microsoft Excel Misc 2 3rd Nov 2005 11:33 PM
Defining variables in a block? Microsoft VB .NET 11 29th Jul 2005 09:43 AM
solver and defining all variables different than one another =?Utf-8?B?ZXhjZWxfZXhjZWxfZXhjZWw=?= Microsoft Excel Misc 0 19th Jul 2005 07:38 AM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 02:05 PM.