Tabbed Control and continuous forms

J

johnstonb

Hi there

I'm trying to keep track of expenses in my business database.

I have an expense period, say, November 2006. I want to enter the
expenses into that period via a continuous form, so you can have
"Telephone" "Telephone" "Travel" "Telephone" "Travel" all under each
other in the period for November 2006. This is achieved through the
continuous form option, so it looks rather manageable. They just scroll
one after the other quite nicely.

If I now want to add more fields for each expense record, like date,
cost, time, person, and description, then I run out of real-estate so I
either make them go onto two lines, or - I hope - I can make use of a
tabbed control to allow us to split the fields onto two pages; the ones
most commonly used will be on page 1, and the second page will contain
the ones only sometimes used.

Kinda like:
[[ PAGE ONE ]] [pagetwo]
Expense Record One; Date, Cost, Person
Expense Record Two; Date, Cost, Person
Expense Record Three; Date, Cost, Person

and
[pageone] [[ PAGE TWO ]]
Expense Record One; Description
Expense Record Two; Description
Expense Record Three; Description

So my problem is, with continuous forms combined with tab controls, I
always seem to get an ugly problem where each expense record has its
own page tabs which ends up taking up multiple lines anyway. I want one
heading which has the two page tabs "page one" and "page two" and below
that, in the continuous section, just the fields that relate to the
page tab in the header. Is this possible?

Here's my result [which is undesirable] -note how each continuous
record has its own tab index

[[ PAGE ONE ]] [pagetwo]
Expense Record One; Date, Cost, Person

[[ PAGE ONE ]] [pagetwo]
Expense Record Two; Date, Cost, Person

[[ PAGE ONE ]] [pagetwo]
Expense Record Three; Date, Cost, Person

Thanks in advance.
 
B

Brendan Reynolds

There's no way to configure the tab control to display its tabs in the form
header. However, you could change the Style property of the tab control to
'None', so that it has no tabs, and use command buttons in the form header
to display the tab page you want by setting the Value property of the tab
control. The Value property is zero-based, so set it to 0 to display the
first page or 1 to display the second page ...

Private Sub cmdShowPage1_Click()
Me.TabCtl7.Value = 0
End Sub

Private Sub cmdShowPage2_Click()
Me.TabCtl7.Value = 1
End Sub
 
J

johnstonb

Hey Brendan

That sounds like a great idea - I'll give it a shot now, but the only
problem is I'm having trouble finding the Style Property of the tab
control :)

B

Brendan said:
There's no way to configure the tab control to display its tabs in the form
header. However, you could change the Style property of the tab control to
'None', so that it has no tabs, and use command buttons in the form header
to display the tab page you want by setting the Value property of the tab
control. The Value property is zero-based, so set it to 0 to display the
first page or 1 to display the second page ...

Private Sub cmdShowPage1_Click()
Me.TabCtl7.Value = 0
End Sub

Private Sub cmdShowPage2_Click()
Me.TabCtl7.Value = 1
End Sub

--
Brendan Reynolds
Access MVP

Hi there

I'm trying to keep track of expenses in my business database.

I have an expense period, say, November 2006. I want to enter the
expenses into that period via a continuous form, so you can have
"Telephone" "Telephone" "Travel" "Telephone" "Travel" all under each
other in the period for November 2006. This is achieved through the
continuous form option, so it looks rather manageable. They just scroll
one after the other quite nicely.

If I now want to add more fields for each expense record, like date,
cost, time, person, and description, then I run out of real-estate so I
either make them go onto two lines, or - I hope - I can make use of a
tabbed control to allow us to split the fields onto two pages; the ones
most commonly used will be on page 1, and the second page will contain
the ones only sometimes used.

Kinda like:
[[ PAGE ONE ]] [pagetwo]
Expense Record One; Date, Cost, Person
Expense Record Two; Date, Cost, Person
Expense Record Three; Date, Cost, Person

and
[pageone] [[ PAGE TWO ]]
Expense Record One; Description
Expense Record Two; Description
Expense Record Three; Description

So my problem is, with continuous forms combined with tab controls, I
always seem to get an ugly problem where each expense record has its
own page tabs which ends up taking up multiple lines anyway. I want one
heading which has the two page tabs "page one" and "page two" and below
that, in the continuous section, just the fields that relate to the
page tab in the header. Is this possible?

Here's my result [which is undesirable] -note how each continuous
record has its own tab index

[[ PAGE ONE ]] [pagetwo]
Expense Record One; Date, Cost, Person

[[ PAGE ONE ]] [pagetwo]
Expense Record Two; Date, Cost, Person

[[ PAGE ONE ]] [pagetwo]
Expense Record Three; Date, Cost, Person

Thanks in advance.
 
B

Brendan Reynolds

Make sure you've selected the tab control itself, not any of the pages
within the tab control. You can do this by clicking the grey area at the top
of the tab control, just to the right of the rightmost tab, or by selecting
the tab control by name in the drop-down list at the top of the Properties
Window.

With the tab control selected, choose the Format tab in the Properties
Window, and you should find the Style property between the Multi Row and Tab
Fixed Height properties.

--
Brendan Reynolds
Access MVP


Hey Brendan

That sounds like a great idea - I'll give it a shot now, but the only
problem is I'm having trouble finding the Style Property of the tab
control :)

B

Brendan said:
There's no way to configure the tab control to display its tabs in the
form
header. However, you could change the Style property of the tab control
to
'None', so that it has no tabs, and use command buttons in the form
header
to display the tab page you want by setting the Value property of the tab
control. The Value property is zero-based, so set it to 0 to display the
first page or 1 to display the second page ...

Private Sub cmdShowPage1_Click()
Me.TabCtl7.Value = 0
End Sub

Private Sub cmdShowPage2_Click()
Me.TabCtl7.Value = 1
End Sub

--
Brendan Reynolds
Access MVP

Hi there

I'm trying to keep track of expenses in my business database.

I have an expense period, say, November 2006. I want to enter the
expenses into that period via a continuous form, so you can have
"Telephone" "Telephone" "Travel" "Telephone" "Travel" all under each
other in the period for November 2006. This is achieved through the
continuous form option, so it looks rather manageable. They just scroll
one after the other quite nicely.

If I now want to add more fields for each expense record, like date,
cost, time, person, and description, then I run out of real-estate so I
either make them go onto two lines, or - I hope - I can make use of a
tabbed control to allow us to split the fields onto two pages; the ones
most commonly used will be on page 1, and the second page will contain
the ones only sometimes used.

Kinda like:
[[ PAGE ONE ]] [pagetwo]
Expense Record One; Date, Cost, Person
Expense Record Two; Date, Cost, Person
Expense Record Three; Date, Cost, Person

and
[pageone] [[ PAGE TWO ]]
Expense Record One; Description
Expense Record Two; Description
Expense Record Three; Description

So my problem is, with continuous forms combined with tab controls, I
always seem to get an ugly problem where each expense record has its
own page tabs which ends up taking up multiple lines anyway. I want one
heading which has the two page tabs "page one" and "page two" and below
that, in the continuous section, just the fields that relate to the
page tab in the header. Is this possible?

Here's my result [which is undesirable] -note how each continuous
record has its own tab index

[[ PAGE ONE ]] [pagetwo]
Expense Record One; Date, Cost, Person

[[ PAGE ONE ]] [pagetwo]
Expense Record Two; Date, Cost, Person

[[ PAGE ONE ]] [pagetwo]
Expense Record Three; Date, Cost, Person

Thanks in advance.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top