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

Newby met twee excel vragen

Status
Niet open voor verdere reacties.

Sunnysideup

Gebruiker
Lid geworden
31 okt 2016
Berichten
8
Hallo allemaal.

ik heb oppervlakkige kennis van Excel en weet niet de ins en outs van codes en dergelijke.

Ik zit nu even met het volgende:

1. ik heb een excel bestand met diverse tabbladen waarvan er een aantal verborgen zijn. Nu wil ik op het eerste blad een knop maken waarmee je het hele bestand in één keer af kan drukken, inclusief de verborgen bladen. kan dit? zo ja, hoe?

2. ik wil ook op het eerste blad een e-mail knop maken. Als je hier op klikt moet er automatisch een e-mail bericht geopend worden met een bepaald onderwerp en de geadresseerden al vooraf ingevuld.
De optie die ik nu geprobeerd heb (e-mail hyperlink) werkt niet goed omdat die blijkbaar een beperking heeft in de hoeveelheid geadresseerden. Hoe kan ik een mailknop maken die meer geadresseerden kan bevatten?

Al vast bedankt!

Sunny-side-up!
 
Welkom bij HelpMij!
Voor het mailen verwijs ik je naar de website van Ron de Bruin, die daar een aantal uitstekende macro's voor heeft gemaakt. Daar zit vast wat nuttigs bij wat je kan gebruiken. Verder zou ik zeggen: doe er een voorbeeldje bij, dat werkt voor ons wat makkelijker!
 
Bedankt voor het antwoord.

Ik heb met behulp van de bijgevoegde code een aantal bladen verborgen gemaakt. Nu wil ik op de eerste pagina dus een knop waarmee ik alle bladen (incl verborgen) kan afdrukken.excel verborgen bladen.jpg

ik heb de juiste functie voor het mailen nog niet gevonden. (de mailto knop voor meerdere geadresseerden)
 
Aan plaatjes hebben we niet zoveel; we zien liever een (test)bestand met de code. Mailen naar meerdere personen is in beginsel hetzelfde als mailen naar één persoon; je moet alleen de adressen even aan elkaar knopen in een lusje. Staan die adressen op een bekende plek, dan loop je daar met een lus doorheen en zet je er een puntkomma (;) tussen.
 
Bekijk bijlage BladenSelecteren.xlsBekijk bijlage BladenSelecteren.xls

het bijgevoegde bestand heeft als basis gediend voor mijn bestand (gevonden op internet)
De verborgen bladen wil ik graag mee nemen bij afdrukken.
Bij voorkeur met een aanklikbare knop op de eerste pagina (klik hier om af te drukken o.i.d.).
Graag een stap voor stap beschrijving van wat ik moet doen, ik ben (nog) niet erg bekend met het maken van macro's en dergelijke.

alvast bedankt voor de moeite!!

Sunny
 
Mailen naar meerdere personen is in beginsel hetzelfde als mailen naar één persoon; je moet alleen de adressen even aan elkaar knopen in een lusje. Staan die adressen op een bekende plek, dan loop je daar met een lus doorheen en zet je er een puntkomma (;) tussen.

Wat bedoel je precies met een lus?
 
De print vraag is deels opgelost dankzij de volgende code van Ron de Bruin:

Sub Print_Hidden_And_Visible_Worksheets()
Dim CurVis As Long
Dim sh As Worksheet
For Each sh In ActiveWorkbook.Worksheets
With sh
CurVis = .Visible
.Visible = xlSheetVisible
.PrintOut
.Visible = CurVis
End With
Next sh
End Sub

Alleen loop ik dan tegen het volgende aan.
Alle tabbladen worden als apart bestand afgedrukt.
Omdat ik het wil omzetten naar PDF (via afdrukken naar PDF creator) wil ik graag dat alle bladen achter elkaar in één print komen in plaats van losse bladen.
Wie heeft een tip hiervoor?
 
Kun je deze aan je behoefte aanpassen?
 
@ cobbe,

dit is een super funktie (als hij het goed doet).
Ik krijg nu een foutmelding als ik de geselecteerde bladen wil printen.

hij zegt: Subscript valt buiten het bereik.
De rode tekst geeft de fout aan.
Moet ik hier nog iets aanpassen?



Code:
Private Sub CheckBox1_Click()
Dim iloop As Integer

For iloop = 1 To ListBox1.ListCount
 ListBox1.Selected(iloop - 1) = CheckBox1.Value
Next
End Sub

Private Sub CommandButton1_Click()
    Unload Me
End Sub

Private Sub CommandButton2_Click()
Dim iloop As Integer
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
   Sheets(ListBox1.List(iloop - 1, 0)).PrintOut
   ListBox1.Selected(iloop - 1) = False
 End If
 Next
End Sub

Private Sub CommandButton3_Click()
Dim iloop As Integer
Dim ftst As Variant
[COLOR="#FF0000"]ftst = Sheets("Start Here").Range("C1").Value    '<----- Folder in Cell G1 (Ex C:\My Documents\)[/COLOR]
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
   Sheets(ListBox1.List(iloop - 1, 0)).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    ftst & ListBox1.List(iloop - 1, 0), Quality:=xlQualityStandard, IncludeDocProperties:= _
    True, IgnorePrintAreas:=False, OpenAfterPublish:=False
   ListBox1.Selected(iloop - 1) = False
 End If
 Next
End Sub



Private Sub UserForm_Initialize()
Dim sSheet

    For Each sSheet In Sheets
        ListBox1.AddItem sSheet.Name
    Next sSheet
End Sub
 
Laatst bewerkt:
Zet je code tussen code-tags aub.

Wijzig de code eens zo:
Code:
Private Sub CommandButton3_Click()
Dim iloop As Integer
Dim ftst As Variant
ftst = [B][COLOR="#FF0000"]"Tester"[/COLOR][/B]  'Sheets("Start Here").Range("C1").Value    '<----- Folder in Cell G1 (Ex C:\My Documents\)
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
   Sheets(ListBox1.List(iloop - 1, 0)).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    ftst & ListBox1.List(iloop - 1, 0), Quality:=xlQualityStandard, IncludeDocProperties:= _
    True, IgnorePrintAreas:=False, OpenAfterPublish:=True
   ListBox1.Selected(iloop - 1) = False
 End If
 Next
End Sub
 
Ik krijg met deze aanpassing een foutmelding als volgt.




Code:
Private Sub CheckBox1_Click()
Dim iloop As Integer

For iloop = 1 To ListBox1.ListCount
 ListBox1.Selected(iloop - 1) = CheckBox1.Value
Next
End Sub

Private Sub CommandButton1_Click()
    Unload Me
End Sub

Private Sub CommandButton2_Click()
Dim iloop As Integer
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
   [COLOR="#FF0000"]Sheets(ListBox1.List(iloop - 1, 0)).PrintOut[/COLOR]
   ListBox1.Selected(iloop - 1) = False
 End If
 Next
End Sub

Private Sub CommandButton3_Click()
Dim iloop As Integer
Dim ftst As Variant
ftst = "Tester" 'Sheets("Start Here").Range("C1").Value    '<----- Folder in Cell G1 (Ex C:\My Documents\)
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
   Sheets(ListBox1.List(iloop - 1, 0)).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    ftst & ListBox1.List(iloop - 1, 0), Quality:=xlQualityStandard, IncludeDocProperties:= _
    True, IgnorePrintAreas:=False, OpenAfterPublish:=False
   ListBox1.Selected(iloop - 1) = False
 End If
 Next
End Sub



Private Sub UserForm_Initialize()
Dim sSheet

    For Each sSheet In Sheets
        ListBox1.AddItem sSheet.Name
    Next sSheet
End Sub
 
En als ik voor de keuze Print als PDF kies krijg ik de volgende fout aangewezen:

Code:
Private Sub CheckBox1_Click()
Dim iloop As Integer

For iloop = 1 To ListBox1.ListCount
 ListBox1.Selected(iloop - 1) = CheckBox1.Value
Next
End Sub

Private Sub CommandButton1_Click()
    Unload Me
End Sub

Private Sub CommandButton2_Click()
Dim iloop As Integer
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
   Sheets(ListBox1.List(iloop - 1, 0)).PrintOut
   ListBox1.Selected(iloop - 1) = False
 End If
 Next
End Sub

Private Sub CommandButton3_Click()
Dim iloop As Integer
Dim ftst As Variant
ftst = "Tester" 'Sheets("Start Here").Range("C1").Value    '<----- Folder in Cell G1 (Ex C:\My Documents\)
For iloop = 1 To ListBox1.ListCount
 If ListBox1.Selected(iloop - 1) = True Then
  [COLOR="#FF0000"] Sheets(ListBox1.List(iloop - 1, 0)).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    ftst & ListBox1.List(iloop - 1, 0), Quality:=xlQualityStandard, IncludeDocProperties:= _
    True, IgnorePrintAreas:=False, OpenAfterPublish:=False
   ListBox1.
[/COLOR]Selected(iloop - 1) = False End If
 Next
End Sub



Private Sub UserForm_Initialize()
Dim sSheet

    For Each sSheet In Sheets
        ListBox1.AddItem sSheet.Name
    Next sSheet
End Sub
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan