So I'm back to where I started. Anyone know of a way to make a copy of a
toolbar so that I can modify it and use a slightly different version with
another form?
I have seen that exact behavior. I just gave up on copying command bars and
just build each one separately. I have not seen the behavior copying an item on
a command bar to the same command bar and then changing something about the
copy, but when copying across command bars it definitely does what you describe
(although not 100% of the time).
--
Rick Brandt, Microsoft Access MVP
Email (as appropriate) to...
RBrandt at Hunter dot com
I thought I was going to be real clever and try something else. Since it's
the last two top-level items that I need to modify, I went into the command
bar copy, created two new top-level items, and then ctrl-dragged the items
from the originals to the copies of the top-level items. This way, I didn't
delete items within the menu, but just created two new menus on the bar. The
two new menus didn't appear in the original. I then deleted the two menus
that I had copied from the menu bar, and I thought I was home-free: the
original had the two menus, and the copy had two brand new menus. Only one
problem: the original menu bar with the two menus I had copied had no items
under them! Sigh.
So I give up too. Good to know I'm not just missing something here.
Thanks,
Neil
"Rick Brandt" <rickb...@hotmail.com> wrote in message
news:ZChZi.53919$RX.5...@newssvr11.news.prodigy.net...
"Neil" <nos...@nospam.net> wrote in message
news:frhZi.4926$yV6....@newssvr25.news.prodigy.net...
A Hack:
I create a command bar "Employee Attendance Entries".
I store a copy in CommandBarsHolder.mdb
To create a copy I run a hack:
Public Sub AirCodeInHackersVille()
With Application
.CommandBars("Employee Attendance Entries").Name = "Whatever"
With WizHook
.Key = 51488399
.WizCopyCmdbars "CommandBarsHolder.mdb"
End With
.CommandBars("Employee Attendance Entries").Name = "Employee
Attendance Entries" & Format(Now(), "yyyymmddhhnnss")
.CommandBars("Whatever").Name = "Employee Attendance Entries"
End With
End Sub
Now I have the orignal plus a copy named Employee Attendance Entries
plus a date-time string.
Will changes in one result in changes to another? I don't know but I
doubt it.
Is the code polished? Nope! Clearly it needs a bunch of error-handling
thing-mes.
Is this any use to anyone? I doubt it, but, of course, every tiny
thing we learn may come in handy at some crucial time down the road
and it's fun messing!
The home db in this case is 2007; the bar holder is 1997. That's quite
a jump.
So, I thought everything was fine, as I had two toolbars with two different
names -- one for one form, and one for another form. The problem arose when
I started modifying the copy. When I modified the copy that I had imported,
the original was modified as well.
Two toolbars in the database, two different names; yet somehow Access sees
them as the same toolbar.
"Arvin Meyer [MVP]" <a...@m.com> wrote in message
news:uFdZ7L6I...@TK2MSFTNGP05.phx.gbl...
Rather than making a copy of your database I would try creating a new blank
database and import only the toolbars from your database and no other objects.
So you now have a database containing nothing but toolbars. Delete the toolbars
you don't want, rename your target TB. Edit the TB as required and then import
it back to your database.
This might break whatever link is syncing the toolbars in the background. Don't
know if it will work but it would be worth a try.
Wayne Gillespie
Gosford NSW Australia
Check out the Application.Commandbars collection
Dale
"Neil" <nos...@nospam.net> wrote in message
news:I8qZi.53965$RX.4...@newssvr11.news.prodigy.net...
Larry Linson
"Larry Linson" <bou...@localhost.not> wrote in message
news:4WKZi.204$RR1.146@trnddc02...
I created these objects below with the same names you used in your code, and
I ran your code. On the line:
.WizCopyCmdbars "CommandBarsHolder.mdb"
I get the error: "Object doesn't support this property or method."
Any ideas?
Thanks!
Neil
"lyle" <lyle.fa...@gmail.com> wrote in message
news:1194703996.3...@22g2000hsm.googlegroups.com...
> .WizCopyCmdbars "CommandBarsHolder.mdb"
>
> I get the error: "Object doesn't support this property or method."
You're using Access 2000, I think.
--
lyle fairfield
"Wayne Gillespie" <bes...@NOhotmailSPAM.com.au> wrote in message
news:v7icj3tcbhdr3ictp...@4ax.com...
In this case, though, I just have this toolbar for this one app, and just
need to make a copy of it so that I can modify it and use the copy with a
different form. So, it seems in this case it's simpler just to copy it
manually than to write code to create a new one with the same functionality.
But I'll definitely keep this in mind in case I need to create a standard
toolbar structure to bring into new apps.
Thanks,
Neil
"Dale Fye" <dale...@nospam.com> wrote in message
news:upxpabAJ...@TK2MSFTNGP04.phx.gbl...
"lyle fairfield" <lyle...@yahoo.ca> wrote in message
news:4hWZi.13601$xa2....@read2.cgocable.net...
Hi, Wayne. Well, I finally got around to trying your suggestion. I made a
blank db, imported the toolbars from the original db into it; deleted
unneeded objects; renamed the remaining custom menu bar; modified the menu
bar. I then deleted the original toolbar from the original db, compacted the
db, and then reimported that single menu bar back into the original db. And
guess what? It still paired up with its twin! That's right -- the
modification I made to the toolbar in the blank db was brought back into
original db in both that toolbar and in the original toolbar. The two are
inseparable.
To recap: toolbar "A" was copied to toolbar "B". Modifications made to one
were reflected in the other. Importing A and B into new B and deleting A
from new db and deleting B from original db was thought to possibly break
the link. Toolbar B was modified and renamed and brought back into original
db, and modifications were reflected in A! Talk about inseparable!
There seem to be no options here except to rebuild B from scratch. Sigh.
Anyway, thought you'd find that interesting.
Neil
One of the other advantages to this method, is that I have figured out how
to create dropdown comboboxes and textboxes in my popup menus, which I was
never able to figure out using the custom toolbars. All you have to do
after this is write the code for the action events.
HTH
Dale
Const BarPopup = 5
Const ControlButton = 1
Const ControlEdit = 2
Const ControlComboBox = 4
Const ButtonUp = 0
Const ButtonDown = -1
Public Sub ReportMenu()
Dim cbr As Object
Dim cbrButton As Object
Dim strSQL As String
Dim rs As DAO.Recordset
On Error Resume Next
CommandBars("MyReportMenu").Delete
On Error GoTo ReportMenuError
Set cbr = CommandBars.Add("MyReportMenu", BarPopup, , True)
With cbr
Set cbrButton = cbr.Controls.Add(ControlButton, , , , True)
With cbrButton
.Caption = "&Print"
.Tag = "Print"
.OnAction = "=fnPrintReport()"
End With
Set cbrButton = cbr.Controls.Add(ControlButton, , , , True)
With cbrButton
.Caption = "&Close"
.Tag = "Close"
.OnAction = "=fnCloseReport()"
End With
End With
Exit Sub
ReportMenuError:
MsgBox "ReportMenu error" & vbCrLf
End Sub
"Neil" <nos...@nospam.net> wrote in message
news:Zo3fj.33558$lD6....@newssvr27.news.prodigy.net...
Neil
"Dale Fye" <dale...@nospam.com> wrote in message
news:u9Xw$VtTIH...@TK2MSFTNGP03.phx.gbl...