*

Help!

Problemen met uw pc? De vrijwilligers van oplossing.be zoeken gratis met u mee! 8)

Meer weten over Oplossing.be?

Hoe stel ik een vraag?

Recent

Auteur Topic: Excel met programma opent steeds in ontwikkelaars-stand  (gelezen 915 keer)

Offline gm34123

  • Lid
  • *
  • Berichten: 64
  • een programmaatje vindt het wel
Excel met programma opent steeds in ontwikkelaars-stand
« Gepost op: 22 maart 2018, 13:22:42 »
Beste Excel specialisten,

Ik heb een programma geschreven en dat werkt zoals gewenst. Op sheet 1 staan enkel 3 Command buttons.
Als ik dat echter opsla en terug open, dan zijn die commandbuttons niet bruikbaar omdat de sheet in ontwerpmodus staat.
Meestal los ik dit op door een macro op te nemen en daaruit het nodige over te nemen, maar die bevat slechts deze lijnen:
Option Explicit

Sub NotOntwikkelaars()
'
' NotOntwikkelaars Macro
'

'
    Range("AA27").Select
End Sub

Het eigenaardige is dat als ik die macro nadien uitvoer, de ontwerpmodus is uitgeschakeld. Als ik die nogmaals uitvoer, blijft de ontwerpmodus uitgeschakeld, er wordt dus niet "getoggled".
Kan iemand mij raad geven hoe ik dat op een meer elegante manier kan oplossen? Want het is wel de bedoeling dat mensen zonder macro-ervaring dat programmaatje kunnen gebruiken.
0860 COMPAL, Mobility Radeon 9200 AGP (0x4C66), Windows XP, Home, SP2, NL, Intel(R) Pentium(R) M processor 1400MHz, 256 MB RAM, HDD:39 GB, NTFS, ZoneAlarm Firewall, Internet Explorer 6.0, Microsoft Outlook

Offline RedHead

  • Ambassadeur
  • *****
  • Berichten: 1.754
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #1 Gepost op: 22 maart 2018, 13:26:41 »
Het lijkt mij het beste als je even je workbook als bijlage post. Er zal iets anders in je code of workbook zitten wat het opstarten in ontwerpmodus opstart.
______________________________

Groet, Leo

Offline gm34123

  • Lid
  • *
  • Berichten: 64
  • een programmaatje vindt het wel
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #2 Gepost op: 22 maart 2018, 15:19:43 »
Hallo Leo,

Doordat ik verder aan het experimenteren was, heb ik gevonden dat als ik die spreadsheet stop, zonder excel te verlaten, en dan met Alt_B die terug open een verschillende start krijg: als ik Shift_& voor "1" gebruik, start hij in Ontwerp_modus en als ik "1" gebruik van het numerieke toetsenbord, dan start hij in niet_ontwerp_modus.

Is er geen xx_open() of zoiets in Excel vba waarin ik kan aanpassen steeds in niet_ontwerp_modus te starten?

Als ge het nodig vindt dat zelf te bekijken dan wens wil ik u die spreadsheet wel bezorgen, maar niet via dit forum.

Groeten,, Guido
0860 COMPAL, Mobility Radeon 9200 AGP (0x4C66), Windows XP, Home, SP2, NL, Intel(R) Pentium(R) M processor 1400MHz, 256 MB RAM, HDD:39 GB, NTFS, ZoneAlarm Firewall, Internet Explorer 6.0, Microsoft Outlook

Offline Dotchiejack

  • Lid
  • *
  • Berichten: 71
  • Geslacht: Man
  • Oplossing.be
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #3 Gepost op: 22 maart 2018, 19:14:56 »
Is er geen mogelijkheid om een gelijkend voorbeeld bestandje te posten met wat Jan, Piet en Katrien gegevens waarin uw probleem ook voorkomt?
Facebook is als gearresteerd worden: alles wat je zegt kan en zal tegen je gebruikt worden...
Soms merken mensen de dingen die we voor hen doen niet op, tot we er mee stoppen.
Error:015: Unable to exit Windows. Try the door.

Offline RedHead

  • Ambassadeur
  • *****
  • Berichten: 1.754
  • Geslacht: Man
  • Met Excel lukt 't wel.... (toch???)
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #4 Gepost op: 22 maart 2018, 22:10:37 »
gm34123, wat bedoel je met "mijn spreadsheet stoppen"? Is dat het workbook afsluiten met het kleine kruisje? En wat is dan "openen met Alt B"???
En deze term "Shift_& voor "1"" is voor mij nůg vager... Wat doe je daar dan precies?

Het is voor mij een volkomen raadsel wat je allemaal aan het doen bent. Ik ga mee met Dotchiejack om dan een gelijkend voorbeeld workbook te posten als je het origineel niet kan vrijgeven.
______________________________

Groet, Leo

Offline gm34123

  • Lid
  • *
  • Berichten: 64
  • een programmaatje vindt het wel
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #5 Gepost op: 23 maart 2018, 09:56:59 »
Goede morgen,

Ik heb mijn werkstuk wat uitgekleed en het verschijnsel is gebleven.
Al bij al heb ik nu gevonden dat mijn vraag volledig te wijten is aan mijn manier van werken. Omdat de muis voor mij niet geschikt is omdat als ik op de linkerknop wil drukken, meestal  ook de ganse muis zich enkele mm verplaatst en dat dit wel eens ongewenste effecten geeft, heb ik me gewoon gemaakt zoveel mogelijk het toetsenbord te gebruiken in plaats van een muis.
Dan hier de uitleg over mijn gecodeerde manier van werken.
Om een spreadsheet te sluiten gebruik ik CTRL_F4, dan hou ik de andere geopende spreadsheets actief in Excel. Dat komt overeen met klikken op het kruisje dat niet uiterst boven rechts staat.
Als ik Alt_B druk dan krijg ik hetzelfde menu als wanneer ge op het ronde Office embleem links boven klikt. Dan krijgt ge een lijst met "Onlangs geopende documenten". Daarin staat de spreadsheet in test steeds op de bovenste plaats en kunt ge die op 4 wijzen openen: door aanklikken, door eerst het pijltje rechts en dan Enter te drukken, door een 1 op het numerieke toetsenbord te drukken, of door met Shift_& (hoofdletter van de & toets op een Azerty klavier = 1).
Enkel als ik de manier Shift_& gebruik (mijn meest gebruikte wijze) opent de spreadsheet in Ontwerpmodus.
Ik heb gisteren op internet naar een oplossing gezocht en daar op de site van social.msdn.microsoft.com heb ik de code gevonden om binnen VBA die ontwerpmodus op/af te zetten.
Mijn eerste ervaringen met Excel heb ik opgedaan in de Windows 95 (pre-internet) tijd. Als ge toen Office kocht was het mogelijk ook de bijhorende boeken te krijgen. In het toenmalige boek Visual Basic UG van Excel 5.0 (1993-1994) heb ik gevonden dat ge een procedure Auto_Open() kunt definiŽren die automatisch wordt uitgevoerd als ge de spreadsheet opent. Dat lukt bij mij niet. Ligt dat aan een wijziging (ik gebruik nu Office 2007) of ligt dat aan het feit dat dergelijke procedure moet "geÔnstalleerd" worden? Ik krijgt dat niet gevonden.
Als ge me daar een oplossing voor kunt geven, dan zal ik jullie eeuwig dankbaar zijn.
Groeten, Guido

« Laatst bewerkt op: 23 maart 2018, 10:19:44 door gm34123 »
0860 COMPAL, Mobility Radeon 9200 AGP (0x4C66), Windows XP, Home, SP2, NL, Intel(R) Pentium(R) M processor 1400MHz, 256 MB RAM, HDD:39 GB, NTFS, ZoneAlarm Firewall, Internet Explorer 6.0, Microsoft Outlook

Offline Dotchiejack

  • Lid
  • *
  • Berichten: 71
  • Geslacht: Man
  • Oplossing.be
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #6 Gepost op: 23 maart 2018, 12:09:08 »
Bij mij gaat uw bestand correct open.
Ik denk dat het aan uw beveiligingsinstellingen ligt.
Je kan het volgende eens proberen:
In de ThisWorkbook module
Private Sub Workbook_Open()
EnterExitDesignMode False
End Sub
plus deze in een normale module
Sub EnterExitDesignMode(bEnter As Boolean)
Dim cbrs As CommandBars
Const sMsoName As String = "DesignMode"
    Set cbrs = Application.CommandBars
    If Not cbrs Is Nothing Then
        If cbrs.GetEnabledMso(sMsoName) Then
            If bEnter <> cbrs.GetPressedMso(sMsoName) Then
                cbrs.ExecuteMso sMsoName
                Stop
            End If
        End If
    End If
End Sub
Facebook is als gearresteerd worden: alles wat je zegt kan en zal tegen je gebruikt worden...
Soms merken mensen de dingen die we voor hen doen niet op, tot we er mee stoppen.
Error:015: Unable to exit Windows. Try the door.

Offline gm34123

  • Lid
  • *
  • Berichten: 64
  • een programmaatje vindt het wel
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #7 Gepost op: 23 maart 2018, 13:40:29 »
Dank voor deze oplossing Dotchiejack. Ik heb de Sub EnterExitDesignMode() in de ThisWorkbook module moeten toevoegen omdat anders die procedure niet gevonden werd.
Ik heb enkele STOP commands toegevoegd om te zien dat die procedure wordt uitgevoerd. Het centrale deel heb ik dus zo gewijzigd.
        If cbrs.GetEnabledMso(sMsoName) Then
            If bEnter <> cbrs.GetPressedMso(sMsoName) Then
                Stop
                cbrs.ExecuteMso sMsoName
            End If
            Stop
        End If            en na de laatste End If nog eens     Stop

En raad eens? In alle andere dan "Alt_B en shift_&" stopt de Workbook_Open() procedure aan de 2de STOP maar bij die ene wordt die procedure helemaal niet uitgevoerd. Ook als ik Alt_B, ShiftLock en dan & (wordt 1 door ShiftLock) gebruik, wordt de procedure uitgevoerd en gestopt na de eerste End If.
Ik weet niet of dit verschil bewust zo gemaakt is (denk aan "een bestand verwijderen met Shift ingedrukt" om het bestand definitief te wissen en niet naar de Recycle-bin te verplaatsen), maar als dat niet zo is dan ga ik meer twijfelen aan de kwaliteit van mijn toetsenbord driver.
Dus tot nu toe alle werk voor niets: de Workbook_Open() routine wordt enkel uitgevoerd wanneer vroeger ook in niet_Ontwerpmodus werd opgestart.
Ik zal dus moeten meegeven dat men niet mijn methode van openen mag gebruiken.
Uw onderschrift "je stopt er je problemen in en ze komen er nooit meer uit" wordt nog eens bevestigd.
Groeten,  Guido
0860 COMPAL, Mobility Radeon 9200 AGP (0x4C66), Windows XP, Home, SP2, NL, Intel(R) Pentium(R) M processor 1400MHz, 256 MB RAM, HDD:39 GB, NTFS, ZoneAlarm Firewall, Internet Explorer 6.0, Microsoft Outlook

Offline gm34123

  • Lid
  • *
  • Berichten: 64
  • een programmaatje vindt het wel
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #8 Gepost op: 24 maart 2018, 09:28:21 »
Beste allemaal,

Het moet dus zo zijn dat met de Shift toets ingedrukt starten maakt dat ge in ontwikkelaars stand opstart, tenminste als er een macro in gedefinieerd is.
Als ge via de officeknop uit de lijst met recente bestanden een spreadsheet opstart met de Shift knop ingedrukt (op eender welke manier), start hij steeds in Ontwerpmodus. Dat moet ge wel nazien door het lint op Ontwikkelaars te plaatsen. Een nul-macro blijkt voldoende te zijn.

Mijn probleem was dus een probleem van niet weten: het is een gewenste optie om alzo een spreadsheet te openen zonder uitvoering van een eventueel aanwezige Worksheet_Open() procedure.

Die Shift knop maakt op andere plaatsen ook een verschil. Behalve met de reeds vermelde Delete knop, maakt hij ook verschil met in een browser-programma Shift_F5 te drukken: dan wordt de pagina niet vernieuwd met een versie die ergens in de cache van een server staat, maar gaat hij de (nieuwe?) versie van het gevraagde adres ophalen.
Ik zal, indien morgen nog geen reactie, morgen dit draadje beŽindigen.

Groet,  Guido
0860 COMPAL, Mobility Radeon 9200 AGP (0x4C66), Windows XP, Home, SP2, NL, Intel(R) Pentium(R) M processor 1400MHz, 256 MB RAM, HDD:39 GB, NTFS, ZoneAlarm Firewall, Internet Explorer 6.0, Microsoft Outlook

Offline Dotchiejack

  • Lid
  • *
  • Berichten: 71
  • Geslacht: Man
  • Oplossing.be
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #9 Gepost op: 24 maart 2018, 10:00:03 »
Als je nu twee knoppen aanmaakt (designmode aan en uit),  helpt zoiets u verder?
en dan met de code dat ik u gisteren heb gegeven, + deze code onder de knoppen.
Sub testEnter()
    EnterExitDesignMode True
End Sub

Sub testExit()
    EnterExitDesignMode False
End Sub
Facebook is als gearresteerd worden: alles wat je zegt kan en zal tegen je gebruikt worden...
Soms merken mensen de dingen die we voor hen doen niet op, tot we er mee stoppen.
Error:015: Unable to exit Windows. Try the door.

Offline gm34123

  • Lid
  • *
  • Berichten: 64
  • een programmaatje vindt het wel
Re: Excel met programma opent steeds in ontwikkelaars-stand
« Reactie #10 Gepost op: 24 maart 2018, 10:25:48 »
Hallo Dotchiejack,

Nee, dat was juist mijn probleem. Die spreadsheet was bedoeld voor mijn kleinkinderen en als ge opstart in Designmode dan kunt ge enkel de knoppen verplaatsen en van grootte veranderen. Ze moeten de weg kennen om die Designmode af te zetten of een macro te starten, daarmee wordt die Designmode ook afgezet.

Toch dank voor uw reaktie.
Guido
0860 COMPAL, Mobility Radeon 9200 AGP (0x4C66), Windows XP, Home, SP2, NL, Intel(R) Pentium(R) M processor 1400MHz, 256 MB RAM, HDD:39 GB, NTFS, ZoneAlarm Firewall, Internet Explorer 6.0, Microsoft Outlook

 


www.combell.com