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

Iedereen die mij geholpen heeft wil ik ontzettend bedanken.
Soms dacht ik het te begrijpen en een andere keer raakte ik geheel in de war. Vooral ook omdat ik op een gegeven moment met VBA-codes van verschillende helpers werkte.
Maar het werkt nu min of meer.

Echter nog een laatste vraag:
Hoe krijg ik bij de opgeslagen sheet het blauwe pijltje van de validatielijst weg?
Zie bijgevoegde afbeelding.

Hier is mijn code:

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
 

Bijlagen

  • knop.jpg
    knop.jpg
    14,5 KB · Weergaven: 41
Laatst bewerkt:
Echter nog een laatste vraag:
Hoe krijg ik bij de opgeslagen sheet het blauwe pijltje van de validatielijst weg?
Zie bijgevoegde afbeelding.

Test het bestandje die ik t.a.v. wigi stuurde , met de laatste code van Rudi . pas wel je map aan E:\Data ..............Daar blijven de pijltjes weg
Code:
UsedRange.Validation.Delete
 
Laatst bewerkt:
Test het bestandje die ik t.a.v. wigi stuurde , met de laatste code van Rudi . pas wel je map aan E:\Data ..............Daar blijven de pijltjes weg
Code:
UsedRange.Validation.Delete
Dag Daniël,

Heb jouw raad opgevolgd en alles werkt perfect:thumb:.
Hier is mijn definitieve code:

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


Een héél kleine onvolkomenheid is het inladen van het opgeslagen bestand.
Ik krijg dan de foutmelding als in de bijlage (plaatje). Daar zal misschien, zoals jij zei, een Excel2007-expert aan te pas moeten komen.
Ik kan het bestand echter gewoon openen.

Nogmaals heel hartelijk dank en ook aan Rudi voor zijn bijdrage.
 
Hazesoft, in plaats van code in allerlei kleurtjes neer te zetten, kan je beter gebruik maken van code tags: klik op het # icoon, en plak jouw code dan in het midden van de 2 tags.
 
Test het bestandje die ik t.a.v. wigi stuurde , met de laatste code van Rudi . pas wel je map aan E:\Data ..............Daar blijven de pijltjes weg
Code:
UsedRange.Validation.Delete
Dag Daniël,

Heb jouw raad opgevolgd en alles werkt perfect:thumb:.
Hier is mijn definitieve code:

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


Een héél kleine onvolkomenheid is het inladen van het opgeslagen bestand.
Ik krijg dan de foutmelding als in de bijlage (plaatje). Daar zal misschien, zoals jij zei, een Excel2007-expert aan te pas moeten komen.
Ik kan het bestand echter gewoon openen.

Nogmaals heel hartelijk dank en ook aan Rudi voor zijn bijdrage.
 

Bijlagen

  • kleinigheid.jpg
    kleinigheid.jpg
    61,4 KB · Weergaven: 44
Wijzig deze regel
Code:
.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
eens in
Code:
.Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2]
en zie dan eens wat er gebeurt
 
En nog 2 verbeteringen

Code:
Sub Berekeningsblad_bewaren()
  with Sheets("calculatie")
     [COLOR="Blue"].UnProtect "hazesoft"[/COLOR]
     .Copy
     With ActiveWorkbook.Sheets(1)
       .PageSetup.Orientation = 2 
       .Shapes("Knop 1").Delete
 [COLOR="Blue"]      With .usedrange
          .value=.value
          .Validation.Delete
       End With[/COLOR]
      .Protect "hazesoft"
      [COLOR="Blue"].Parent[/COLOR].SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
      .Parent.Close
    End With
   .Protect "hazesoft", UserInterFaceOnly:=True
  End With
  MsgBox "De calculatie voor " & [C2].Value & " is nu opgeslagen in de map E:\Data\MS-excel\Rogier\Calculaties\."
End Sub
 
Laatst bewerkt:
Wijzig deze regel
Code:
.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
eens in
Code:
.Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2]
en zie dan eens wat er gebeurt

Dag Rudi,

Dit werkrt perfect, maar nu wordt de sheet opgeslagen als *.xlsx.
En mijn zoon werkt met Office-2003.
 
Dag Rudi,

Dit werkrt perfect, maar nu wordt de sheet opgeslagen als *.xlsx.
En mijn zoon werkt met Office-2003.

Ik heb 2002 / 2003 en 2007 > nergens een melding bij het opslaan ( conversie instelling neem een kijkje op de MS site )
 
En nog 2 verbeteringen

Code:
Sub Berekeningsblad_bewaren()
  with Sheets("calculatie")
     [COLOR="Blue"].UnProtect "hazesoft"[/COLOR]
     .Copy
     With ActiveWorkbook.Sheets(1)
       .PageSetup.Orientation = 2 
       .Shapes("Knop 1").Delete
 [COLOR="Blue"]      With usedrange
          .value=.value
          .Validation.Delete
       End With[/COLOR]
      .Protect "hazesoft"
      [COLOR="Blue"].Parent[/COLOR].SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
      .Parent.Close
    End With
   .Protect "hazesoft", UserInterFaceOnly:=True
  End With
  MsgBox "De calculatie voor " & [C2].Value & " is nu opgeslagen in de map E:\Data\MS-excel\Rogier\Calculaties\."
End Sub

Dan krijg ik deze foutmelding: zie bijlage.
 

Bijlagen

  • fout424.jpg
    fout424.jpg
    27,4 KB · Weergaven: 42
Als je dan foutopsporing aanklikt, welke regel kleurt dan geel ?

Code:
With[COLOR="Red"] .[/COLOR]UsedRange
 
Laatst bewerkt:
Als je dan foutopsporing aanklikt, welke regel kleurt dan geel ?
Ik ben ni echt meer aan het volgen > Rudi ;) het is deze
Code:
Sub Berekeningsblad_bewaren()
  with Sheets("calculatie")
     .UnProtect "hazesoft"
     .Copy
     With ActiveWorkbook.Sheets(1)
       .PageSetup.Orientation = 2 
       .Shapes("Knop 1").Delete
       With usedrange
         [COLOR="Red"] .value=.value[/COLOR]
          .Validation.Delete
       End With
      .Protect "hazesoft"
      .Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls"
      .Parent.Close
    End With
   .Protect "hazesoft", UserInterFaceOnly:=True
  End With
  MsgBox "De calculatie voor " & [C2].Value & " is nu opgeslagen in de map E:\Data\MS-excel\Rogier\Calculaties\."
End Sub
 
Zie vorige post >> er ontbreekt een punt voor UsedRange
 
OEF :p
Hans, na 2' Googelen deze gevonden
Today's author is Ron de Bruin , an Excel MVP. You can find more useful tips and links to Excel add-ins at his website: http://www.rondebruin.nl/
You see a lot of old SaveAs code that does not specify the FileFormat
parameter. In Excel versions before Excel 2007, code without this parameter
will not cause too many problems because Excel will use the current FileFormat
of the existing file -- and the default FileFormat for new files is a normal workbook. But because there are so many new file formats in Excel 2007, you shouldn't
use code that doesn't specify the FileFormat parameter.
In Excel 2007, the SaveAs method requires you to provide both the FileFormat parameter and the correct file extension.But this code will always work:
ActiveWorkbook.SaveAs "C:\ron.xlsm", fileformat:=52
These are the main file formats in Excel 2007:
51 = xlOpenXMLWorkbook (without macro's in 2007, .xlsx)
52 = xlOpenXMLWorkbookMacroEnabled (with or without macro's in 2007, .xlsm)
50 = xlExcel12 (Excel Binary Workbook in 2007 with or without macro's, .xlsb)
56 = xlExcel8 (97-2003 format in Excel 2007, .xls)
Note: I always use the FileFormat numbers instead of the defined constants
in my code so that it will compile OK when I copy the code into an Excel
97-2003 workbook. (For example, Excel 97-2003 won't know what the
xlOpenXMLWorkbookMacroEnabled constant is.)
dus mi moet jouw bestandsformaatprobleem opgelost zijn als je onderstaande regel gebruikt ipv de huidige
Code:
.Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls", FileFormat:=56
 
Laatst bewerkt:
Dag Rudi,

Code:
.Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls", FileFormat:=56
Dat is hem helemaal.
Bedankt.
 
Dag Rudi,

Code:
.Parent.SaveAs "E:\Data\MS-excel\Rogier\Calculaties\" & [C2] & ".xls", FileFormat:=56
Dat is hem helemaal.
Bedankt.

Dan nu nog de opmaak wat bijstellen zoals een lege cel in de validatie en je hebt een mooi bestandje :thumb:
 
Dan nu nog de opmaak wat bijstellen zoals een lege cel in de validatie en je hebt een mooi bestandje :thumb:

Ik ben er heel blij mee. Dank zij jou en Rudi ben ik zo ver gekomen. Dus heel erg bedankt.:thumb:
Ja, eigenlijk zou na het opslaan van het bestand de calculatiesheet helemaal leeg moeten zijn.
Behalve de fomules natuurlijk.
Is daar ook een code voor?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan