Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

[excel 2007] macro "opslaan & sluiten onder voorwaarden van"

Pagina: 1
Acties:

Verwijderd

Topicstarter
Mensen,

Ik ben op zoek naar een code (ik weet niet zeker of het uberhaupt mogelijk is) waarmee ik een document kan opslaan en afsluiten, indien twee cellen gelijk zijn aan elkaar.

Dus:

If C1 = C2 (beiden op het betreffende tabblad, Hand 1)
then
"opslaan & afsluiten"

Else
Sheets("Hand 2").Select

Wie oh wie kan me hiermee helpen?

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Ten eerste zou ik dat heel erg af willen raden (foutgevoelig, gebruiksonvriendelijk, etc). Ten tweede: dat kan heel simpel met VBA: met de Worksheet_SelectionChange() event, en natuurlijk wat standaardcode om op te slaan etc.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


Verwijderd

Topicstarter
Ik ben niet echt een held met de verschillende standaard codes. Ik ken alleen een paar codes die ik te zien krijg op het moment dat ik een VBA "opneem". Zou je het iets kunnen concretiseren?

[ Voor 4% gewijzigd door Verwijderd op 28-09-2009 17:58 ]


  • pedorus
  • Registratie: Januari 2008
  • Niet online
Lijkt me niet al te moeilijk; iets als
Visual Basic:
1
2
3
4
    If Range("c1") = Range("c2") Then
        ActiveWorkbook.Save
        ActiveWorkbook.Close
    End If

Maar wanneer moet die code uitgevoerd gaan worden?

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Verwijderd schreef op maandag 28 september 2009 @ 17:58:
Ik ben niet echt een held met de verschillende standaard codes. Ik ken alleen een paar codes die ik te zien krijg op het moment dat ik een VBA "opneem". Zou je het iets kunnen concretiseren?
Klinkt nogal sneu, maar toch: nee. Met zoiets dat een sheet goed kan vern@#ken vind ik dat je dat niet o.b.v. copypasten kunt doen maar alleen door precies te weten hoe en wat de code doet. En dus door jezelf goed in te lezen in VBA en het dan zelf uit te zoeken.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Heel erg simpele vraag, maar wanneer had je in gedachten dat dit zou gaan lopen?

Tijdens het openen betekent dat een gemiddelde gebruiker het bestand niet meer geopend krijgt ( het sluit gelijk weer )
Tijdens het wijzigen betekent dat iemand het wel kan openen, maar als hij in cel c50.000 iets wijzigt ( bijv een tikfout herstelt ) dan sluit het zich weer of hij krijgt gewoon iets heel anders in beeld ( tabblad 2 ), extreem gebruiksonvriendelijk.

Sowieso zou ik al erg oppassen met opslaan macro's die zo simplistisch zijn, onbedoeld kan een gebruiker dan iets overschrijven.

Verwijderd

Topicstarter
Het zit als volgt:
Ik heb een 11 tabbladen, start en daarna 1 t/m 10.
Op tabblad start geef je aan hoeveel handelingen er nodig zijn. Vervolgens kan er onderaan op een knop <verder> gedrukt worden, wat het volgende tabblad zichtbaar maakt:

Sub hand1()
'
' hand1 Macro
'

'
Sheets("Hand 1").Visible = True
Sheets("Hand 1").Select
Range("B2:E2").Select
End Sub

Op dit tabblad kan vervolgens weer op verder gedrukt worden.

Bovenaan elk tabblad komt handeling 1 van X te staan. Zodra deze twee getallen overeen komen, moet het workbook opgeslagen en afgesloten worden zodra er op verder gedrukt wordt.

Als ik de code dus verander in:

Sub hand1()
'
' hand1 Macro
'

'
If Range("c1") = Range("c2") Then (hier uiteraard de twee betreffende cellen plaatsen)
ActiveWorkbook.Save
ActiveWorkbook.Close
End If
Sheets("Hand 1").Visible = True
Sheets("Hand 1").Select
Range("B2:E2").Select
End Sub

Dan zou het moeten kloppen? Voor de duidelijkheid: de macro wordt alleen geactiveerd op het moment dat op de knop <verder> gedrukt wordt.

  • F_J_K
  • Registratie: Juni 2001
  • Niet online

F_J_K

Moderator CSA/PB

Front verplichte underscores

Nee, dat klopt dus niet, dit gaat zo niet werken :)

Wat is er overigens mis met {alt-f4} {enter} door de gebruiker zelf te doen? Kost minder moeite dan regelmatig op een knop drukken met de muis.

'Multiple exclamation marks,' he went on, shaking his head, 'are a sure sign of a diseased mind' (Terry Pratchett, Eric)


  • pedorus
  • Registratie: Januari 2008
  • Niet online
Zomaar een gek idee, maar als het een soort enquete betreft, waarom zou je dan Excel gebruiken, en niet een kant-en-klare online applicatie? :)

In jouw voorstelling druk je op 'verder', en wordt opeens het workbook opgeslagen en gesloten. Waarom zou je op het laatste tabblad niet gewoon een andere macro achter de knop zetten? Ook is een blad 'eind' vrij gebruikelijk ('bedankt voor uw medewerking, etc.'). (Sowieso heb je per tabblad 1 knop nodig bij mijn weten, of je moet de knop steeds gaan verplaatsen of iets anders geks doen)

Als de workbook in de temp-folder staat van een mailapplicatie zijn als het tegenzit vervolgens na het 'automatisch opslaan en sluiten' je antwoorden weg... :X

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Verwijderd

Topicstarter
pedorus schreef op dinsdag 29 september 2009 @ 00:09:
Zomaar een gek idee, maar als het een soort enquete betreft, waarom zou je dan Excel gebruiken, en niet een kant-en-klare online applicatie? :)
Het betreft geen enquete ;)
In jouw voorstelling druk je op 'verder', en wordt opeens het workbook opgeslagen en gesloten.
Zodra het workbook opgeslagen is, moeten er nog een aantal andere stappen uitgevoerd worden. Deze staan vermeldt in de bijgeleverde handleiding.
Waarom zou je op het laatste tabblad niet gewoon een andere macro achter de knop zetten? Ook is een blad 'eind' vrij gebruikelijk ('bedankt voor uw medewerking, etc.'). (Sowieso heb je per tabblad 1 knop nodig bij mijn weten, of je moet de knop steeds gaan verplaatsen of iets anders geks doen)
Omdat van te voren niet duidelijk is welk tabblad de laatste zal zijn. :) Uiteraard staat er op elk tabblad een nieuwe knop met daaronder een aparte macro.
Als de workbook in de temp-folder staat van een mailapplicatie zijn als het tegenzit vervolgens na het 'automatisch opslaan en sluiten' je antwoorden weg... :X
Zit het niet ;)

Maar ik begrijp uit jullie reacties dat dit een redelijk onhandige methode is? Of is het wel te doen, alleen omslachtig?

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Verwijderd schreef op dinsdag 29 september 2009 @ 00:14:
Maar ik begrijp uit jullie reacties dat dit een redelijk onhandige methode is? Of is het wel te doen, alleen omslachtig?
Alles kan, desnoods neem je die 11 macro's even op met de macro-recorder. Als je een knop tekent zie je daar automatisch een knopje voor. Lijkt me niet zo moeilijk. Het waarom-verhaal (en ook wat-verhaal) is alleen een beetje wazig.. :)

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


  • Gomez12
  • Registratie: Maart 2001
  • Laatst online: 17-10-2023
Verwijderd schreef op dinsdag 29 september 2009 @ 00:14:
[...]
Maar ik begrijp uit jullie reacties dat dit een redelijk onhandige methode is? Of is het wel te doen, alleen omslachtig?
Het is wel te doen, maar niemand gaat er vrolijk van worden.

Je hele macro met werkbladen tonen / verbergen en aan het einde afsluiten komt totaal niet overeen met wat een gebruiker van excel verwacht.

Als ik zo'n sheet zou krijgen zou ik eerst op Alt-F11 drukken en al die narigheid uitschakelen, zodat ik gewoon terug kan gaan etc. Dat bestand opslaan en iedereen kan er weer normaal gebruik van maken.

Zoals ik het lees zou ik gewoon geen excel gebruiken maar of een losse app of een webapp ( zo speciaal klinkt het niet echt ) zodat je alle bagger die excel meebrengt niet uit hoeft te schakelen / moeilijk hoeft te doen.

Imho ben je je nu 3x in de rondte aan het wringen om iets in excel te krijgen wat gewoon alle gebruikerservaringen met excel teniet doet.

Verwijderd

Topicstarter
Zoals ik het lees zou ik gewoon geen excel gebruiken maar of een losse app of een webapp ( zo speciaal klinkt het niet echt ) zodat je alle bagger die excel meebrengt niet uit hoeft te schakelen / moeilijk hoeft te doen.
Aan wat voor webapplicatie moet ik dan denken?
Pagina: 1