• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Formulier niet weergeven

Status
Niet open voor verdere reacties.

cocko

Gebruiker
Lid geworden
25 nov 2009
Berichten
69
Beste forumleden,

Ik wil d.m.v. een macro een 2e excel-bestand openen en diezelfde macro daarin wat wijzigingen laten aanbrengen. Tot zover geen probleem!

Waar ik echter tegenaan loop is dat dat 2e bestand standaard opent met een formulier. Onderstaande code staat in ThisWorkbook:
Private Sub workbook_open()
Dossier_aanmaken.Show
End Sub

Ik kan wel heel eenvoudig dat formulier wegklikken, echter het zou mooi zijn als de macro er automatisch langs komt.

Kan iemand mij helpen?

Alvast bedankt!

Henk
 
Kun je iets met:
Code:
If ActiveWorkbook.Name = "1e bestand.xls" then
  Dossier_aanmaken.Show
else
   .....doe iets anders code
end if
 
Beste HSV,

Bedankt voor het meedenken, echter het werkt niet. Op het moment dat het bestand geopend wordt is het natuurlijk ook gelijk het actieve bestand, oftewel het antwoord op de eerste regel van jouw code is altijd JA.

Heb je (of iemand anders) nog meer goede ideeen?

Henk
 
Je wil met die macro in het 1e Bestand.xls een tweede bestand openen, dan is het 2e Bestand.xls toch het actieve bestand als die geopend is?
Bv.
Code:
Private Sub workbook_open()
.....jouw verdere code
'dan met code een tweede bestand openen
Workbooks.open ("C:\Mijn documenten\2e bestand.xls")
 If ActiveWorkbook.Name = "1e bestand.xls" then
 Msgbox "1e Bestand"  'Dossier_aanmaken.Show
else
   msgbox "2e Bestand"  '.....doe iets anders code
end if
enz.

Of ik begrijp het helemaal verkeerd.
 
Ik wil vanuit mijn 1e bestand wijzigingen aanbrengen in mijn 2e bestand, welke ik verder data-bestand zal noemen voor de duidelijkheid.
Mijn macro in bestand 1 is inderdaad zoals je dacht:

Workbooks.open ("C:\Mijn documenten\data bestand.xls")

Alleen vanaf dit punt is dus mijn data-bestand het actieve bestand. Het probleem zit hem in het formulier waar dit data-bestand standaard mee opent. De code uit post #1 zit dus in mijn data-bestand.

Code:
Workbooks.open ("C:\Mijn documenten\data bestand.xls")
 If ActiveWorkbook.Name = "1e bestand.xls" then

geeft altijd als antwoord nee! ActiveWorkbook.name zal uiteraard data bestand.xls zijn omdat ik die net zelf geopend heb!
Deze code is dus overbodig.

Ik hoop dat je het zo wel begrijpt?
Ik kan natuurlijk het formulier in het data bestand onder een knop hangen, dan is het probleem opgelost. Echter is dat niet de oplossing waar ik gelukkig van wordt.

Wat ik zoek is iets als application.displayalerts = false (maar dan voor formulieren)
Of een optie dat de macro in bestand 1 de cancel-knop op het formulier van het data-bestand activeert. (dit doe ik nu dus handmatig)

Groet Henk
 
Met EnableEvents kan je de VBA uitschakelen.
Maar je moet wel aan het eind van je code EnableEvents op True zetten!
Dat is héél belangrijk, anders werkt VBA niet.

Code:
Application.EnableEvents = False
Workbooks.Open "C:\Mijn documenten\data bestand.xls"
Application.EnableEvents = True

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan