• 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.

lettertypes even groot

Status
Niet open voor verdere reacties.
Dit kan je zelf vinden met volgende hint
Code:
Sheets("calculatie").Unprotect Password:="jouw password"
en
Code:
Sheets("calculatie").protect Password:="jouw password"

eentje staat boven en eentje staat onderaan in de macro

Dat is snel. Ga ik straks meteen proberen.
Ben jij een professional of heb jij Excel als hobby?
 
Dat is snel. Ga ik straks meteen proberen.
Ben jij een professional of heb jij Excel als hobby?

Ik doe het omdat ik sinds eind vorig jaar een deel van de facturatie voor het bedrijf waar ik werk verzorg en al vlug had ik begrepen dat het niet enkel =SOM(A1+B1) was in excel maar dat er veel meer kwam bij kijken o.a. macro's VBA , ik heb hier op dit forum ook vragen gesteld en misschien in de toekomst nog :eek:,Het was o.a ook Rudi , snb , wigi , roncancio , readhead en nog enkel die me steeds hebben geholpen met hier en daar soms een addertje onder het gras > waar ik veel uit leerde < maar heb ondertussen al meerdere boeken aangekocht en kijk heel veel topic's en ............ook via zoekfunctie op Engelse benaming een schat aaninfo op het www.
oeps tja jouw code
Code:
Sub Berekeningsblad_bewaren()
  Sheets(1).Protect Password:="helpmij", UserInterFaceOnly:=True  ' [COLOR="Red"]helpmij is hier gebruikt als voorbeeld [/COLOR]
  Sheets("calculatie").Copy
  With ActiveWorkbook.Sheets(1)
    .UsedRange.Value = .UsedRange.Value
    .PageSetup.Orientation = 2
    .CommandButton1.Visible = False
    .Parent.SaveAs "E:\Data\MS-excel\Rogier\" & .[C2]
    .Close
  End With
  Sheets(1).Protect Password:="helpmij", UserInterFaceOnly:=True

End Sub

Ik ben vrachtwagen bestuurder , verzorg een deel van de planning en facturatie binnen het bedrijf > geen prof excel , hobby .
 
Laatst bewerkt:
Ik doe het omdat ik sinds eind vorig jaar een deel van de facturatie voor het bedrijf waar ik werk verzorg en al vlug had ik begrepen dat het niet enkel =SOM(A1+B1) was in excel maar dat er veel meer kwam bij kijken o.a. macro's VBA , ik heb hier op dit forum ook vragen gesteld en misschien in de toekomst nog :eek:,Het was o.a ook Rudi , snb , wigi , roncancio , readhead en nog enkel die me steeds hebben geholpen met hier en daar soms een addertje onder het gras > waar ik veel uit leerde < maar heb ondertussen al meerdere boeken aangekocht en kijk heel veel topic's en ............ook via zoekfunctie op Engelse benaming een schat aaninfo op het www.
oeps tja jouw code
Code:
Sub Berekeningsblad_bewaren()
  Sheets(1).Protect Password:="helpmij", UserInterFaceOnly:=True  ' [COLOR="Red"]helpmij is hier gebruikt als voorbeeld [/COLOR]
  Sheets("calculatie").Copy
  With ActiveWorkbook.Sheets(1)
    .UsedRange.Value = .UsedRange.Value
    .PageSetup.Orientation = 2
    .CommandButton1.Visible = False
    .Parent.SaveAs "E:\Data\MS-excel\Rogier\" & .[C2]
    .Close
  End With
  Sheets(1).Protect Password:="helpmij", UserInterFaceOnly:=True

End Sub

Ik ben vrachtwagen bestuurder , verzorg een deel van de planning en facturatie binnen het bedrijf > geen prof excel , hobby .

OK.
Bedankt voor de code.
Krijg volgende foutmelding: .CommandButton1.Visible = False

Heb de code als volgt aangepast:

Sub Berekeningsblad_bewaren()
Sheets(1).Protect Password:="hazesoft", UserInterFaceOnly:=True
Sheets("calculatie").Copy
With ActiveWorkbook
With .Sheets(1).UsedRange
.Copy
.PasteSpecial xlValues
End With
[A1].Select
.Sheets(1).Shapes("Knop 1").Delete .Sheets(1).PageSetup.Orientation = 2
.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
.Close
End With
Sheets(1).Protect Password:="hazesoft", UserInterFaceOnly:=True
MsgBox "De calculatie voor " & [C2].Value & " is opgeslagen."
End Sub
 
OK.
Bedankt voor de code.
Krijg volgende foutmelding: .CommandButton1.Visible = False

Ik weet niet met welke code jij aan het werken bent :rolleyes:, hier in deze topic staan 4 a 6 code's ik geef het maar als voorbeeld om je te laten zien waar je het kan plaatsen .
Dan heb ik volgende vraag , welk blad wil je beveiligen het gekopieërde of je master blad ? Hoe ga je na 20 calculatie's dat blad vinden die je nodig hebt , alle tabs zullen de naam calculatie( ) bevatten ?
 
Ik weet niet met welke code jij aan het werken bent :rolleyes:, hier in deze topic staan 4 a 6 code's ik geef het maar als voorbeeld om je te laten zien waar je het kan plaatsen .
Dan heb ik volgende vraag , welk blad wil je beveiligen het gekopieërde of je master blad ? Hoe ga je na 20 calculatie's dat blad vinden die je nodig hebt , alle tabs zullen de naam calculatie( ) bevatten ?

Het masterblad moet beveiligd zijn zodat de formules niet kunnen worden gewijzigd.
Dit werkt nu goed.

Het zou natuurlijk mooi zijn als de cellen van het masterblad leeg zijn (behalve de formules) na het opslaan voor een volgende calculatie.

Het zou helemaal mooi zijn wanneer de opgeslagen calculatie ook nog beveiligd is.

Een allerlaatste optie is natuurlijk een volgnummer achter de klantnaam:
Bouwbedrijf Huskes-1.xls
Bouwbedrijf Huskes-2.xls
Bouwbedrijf Huskes-3.xls
enz.

Dit zal wel niet mogelijk zijn, want dan moet er eerst gekeken worden hoeveel calculaties er al zijn opgeslagen onder deze bestandsnaam.
 
Hoe ga je na 20 calculatie's dat blad vinden die je nodig hebt , alle tabs zullen de naam calculatie( ) bevatten ?

Hoi Daniël,

Nee hoor, de tabs hebben de naam van de klant. Of bedoel je calculaties voor dezelfde klant? Misschien een volgnummer er achter?
 
Beste Hans, als je goed had gekeken zou je gemerkt hebben dat bij de kopieën de validatielijsten reeds vervangen zijn door enkel waarden. Dit gebeurt reeds met onderstaande regel
Code:
.UsedRange.Cells.Value = .UsedRange.Cells.Value
of
Code:
With .Sheets(1).UsedRange
        .Copy
        .PasteSpecial xlValues
End With
 
Het masterblad moet beveiligd zijn zodat de formules niet kunnen worden gewijzigd.
Dit werkt nu goed.

Het zou natuurlijk mooi zijn als de cellen van het masterblad leeg zijn (behalve de formules) na het opslaan voor een volgende calculatie.

.
Dat is haalbaar , ik zou zeggen zoek eens , probeer een code te vinden > aan te passen en zit je vast > je weet de weg naar het forum ( ClearContents is het keywoord )
Bekijk ook nog eens de volledige opmaak zo bemerk ik dat je geen lege cel heb bij je validatie lijst je mag geen profiel teveel selecteren idem in je opp. beh.
 
Laatst bewerkt:
Kijk ook eens bij Union zodat je alle gebieden in 1 verzameling kan plaatsen en dan de bewerking uitvoeren
 
Beste Hans, als je goed had gekeken zou je gemerkt hebben dat bij de kopieën de validatielijsten reeds vervangen zijn door enkel waarden.
Dag Rudi,

Dat staat ook in mijn code kijk maar:

Sub Berekeningsblad_bewaren()
Sheets(1).Protect Password:="hazesoft", UserInterFaceOnly:=True
Sheets("calculatie").Copy
With ActiveWorkbook
With .Sheets(1).UsedRange
.Copy
.PasteSpecial xlValues

End With
[A1].Select
.Sheets(1).Shapes("Knop 1").Delete
.Sheets(1).PageSetup.Orientation = 2
.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
.Close
End With
Sheets(1).Protect Password:="hazesoft", UserInterFaceOnly:=True
MsgBox "De calculatie voor " & [C2].Value & " is nu opgeslagen in E:\Data\MS-excel\Rogier\Calculaties\."
End Sub

Wanneer ik het opgeslagen blad inlaad, kan ik toch de validatielijst gebruiken.
 
Laatst bewerkt:
Beste Hans, als je goed had gekeken zou je gemerkt hebben dat bij de kopieën de validatielijsten reeds vervangen zijn door enkel waarden.

Ik snap het al: ik had de andere werkmap ook nog actief.

Maar de blauwe pijltjes van de validatielijst blijven wel staan. Hoe krijg ik die weg?
 
Laatst bewerkt:
Zo is hij compleet
Code:
Sub Berekeningsblad_bewaren1()
  Sheets("calculatie").Copy
  With ActiveWorkbook.Sheets(1)
    .UsedRange.Cells.Value = .UsedRange.Cells.Value
    .Shapes("Knop 1").Delete
    .PageSetup.Orientation = 2
    .UsedRange.Validation.Delete
    .Protect "jouw wachtwoord"
    .Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2]
    .Parent.Close
  End With
End Sub
 
Zo is hij compleet

Rudi , bij mij doet hij het perfect :thumb::thumb:
Ik heb deze avond geleerd dat zoals hier in deze situatie ook al heeft de knop het kenmerk 7 je toch ".Shapes("Knop 1").Delete" in je code moet zetten .
wsl zal snb hier een verklaring voor hebben :rolleyes:
 
Ik heb deze avond geleerd dat zoals hier in deze situatie ook al heeft de knop het kenmerk 7 je toch ".Shapes("Knop 1").Delete" in je code moet zetten .
wsl zal snb hier een verklaring voor hebben :rolleyes:

Dat is op het eerste zicht toch erg raar.

Kan er iemand een bestandje opmaken met de juiste testsituatie (er zijn al zoveel codes en posts in deze topic dat het niet meer duidelijk is). Dan zal ik wat testen.
 
Dat is op het eerste zicht toch erg raar.

Kan er iemand een bestandje opmaken met de juiste testsituatie (er zijn al zoveel codes en posts in deze topic dat het niet meer duidelijk is). Dan zal ik wat testen.

Wim . Bij deze met knop 12
en komt netjes in de map op de E drive terecht
 

Bijlagen

  • voor_wigi.xls
    65,5 KB · Weergaven: 25
  • knop12.jpg
    knop12.jpg
    52,6 KB · Weergaven: 18
Laatst bewerkt:
Indien je 2 knoppen plaatst dan krijg je ze weg met deze code
Code:
Sub Berekeningsblad_bewaren1()
  Sheets("calculatie").Copy
  With ActiveWorkbook.Sheets(1)
    .UsedRange.Cells.Value = .UsedRange.Cells.Value
    [COLOR="Red"].Shapes("Knop 2").Delete
    .Shapes("Knop 1").Delete[/COLOR]
    .PageSetup.Orientation = 2
    .UsedRange.Validation.Delete
    .Protect "jouw wachtwoord"
    .SaveAs "E:\Data\" & [C2]
    .Parent.Close
  End With
End Sub
ongeacht welk eigen knop nummer ze hebben .
en nu is het bad en bed tijd > straks knopjes tellen tot de grens Luxemburg
 
Na tests blijkt dat:

- Bij het kopiëren van het tabblad worden buttons blijkbaar hernoemd naar een algemene naam, gevolgd door een spatie, en dan een volgnummer.

- Die algemene naam is taalafhankelijk (d.i. Knop voor een Nederlandse Excel omgeving, Button voor een Engelse omgeving).

- Geef je de knop in het originele bestand een naam, anders dan de standaardnaam Knop... of Button..., dan vindt het hernoemen niet plaats.

Aangezien dit in de praktijk toch sowieso zou moeten worden in elke iet of wat deftige applicatie, zie ik hier geen verdere moeilijkheden in.

Wigi
 
Er zijn 2 soorten opdrachtknoppen: die uit de werkset formulieren en uit de werkset besturingselementen.

De eerste maken deel uit van de verzameling buttons:

Code:
x=sheets(1).buttons.count

Je kunt deze benaderen met het indexnummer, de eigenschap name of de eigenschap caption.
Je kunt controleren dat de caption van een button niet hetzelfde is als de name met:

Code:
c1=sheets(1).buttons(1).name
c2=sheets(1).buttons(1).caption

Maak een button zichtbaar/onzichtbaar:
Code:
sheets(1).buttons(1).visible=true
c1=sheets(1).buttons(1).name
c2=sheets(1).buttons(1).caption
sheets(1).buttons(c1).visible=true
sheets(1).buttons(c2).visible=true

Mijn voorkeur gaat uit naar opdrachtknoppen uit de werkset besturingelementen (active-X controls), omdat daaraan meer eigenschappen (kleur, achtergrond, lettertype) in te stellen zijn en gemakkelijker code aan te koppelen is.

Deze kun je benaderen met
Code:
sheets(1).OLEObjects(1).visible=true
of
c1=sheets(1).OLEObjects(1).name
sheets(1).OLEObjects(c1).visible=true
of rechtstreeks als object:
sheets(1).Commandbutton1.visible=true
 
@ Wigi en @ snb :thumb:, ik heb leerstof voor morgen mijn volledige rit van +/- 500 km ( knop een naam geven > eens kijken hoe bij een knop uit werkset formulieren ? . De active-X besturingelementen daar speel ik al mee qua opmaak .
Thanks a lot .
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan