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

Verwijderen van tabbladen

Status
Niet open voor verdere reacties.
Dan stel ik voor dat je eerst op internet of in een handboek wat leest over VBA.

Er is materiaal genoeg, loop bvb eens een bibliotheek binnen of zoek op internet naar

handleiding excel vba

of iets dergelijks. Dat is zeker de moeite waard, ook al kost het dan nu wat tijd en moeite.

Wigi
 
Dan stel ik voor dat je eerst op internet of in een handboek wat leest over VBA.

Er is materiaal genoeg, loop bvb eens een bibliotheek binnen of zoek op internet naar

handleiding excel vba

of iets dergelijks. Dat is zeker de moeite waard, ook al kost het dan nu wat tijd en moeite.

Wigi

Was ik ook van plan.
Volgend schooljaar zal ik excel volgen in avondles. Maar nu kriebelde het even om er toch aan te beginnen, aan door te doen en nu om het af te werken.
Wil je mij aub nog even helpen met deze laatste code. Alles werkt in mijn macro, alleen het printen niet.
 
Dan stel ik voor dat je eerst op internet of in een handboek wat leest over VBA.

Er is materiaal genoeg, loop bvb eens een bibliotheek binnen of zoek op internet naar

handleiding excel vba

of iets dergelijks. Dat is zeker de moeite waard, ook al kost het dan nu wat tijd en moeite.

Wigi

Wil je mij nog even helpen met de code aub?
 
snitsel

Aan die code is niets verkeerd. Bvb. de code uit post #18.

Het eerste stuk daarvan:

Code:
'Printen van alle tabbladen die nog aanwezig zijn in het bestand + opslaan van het bestand in de juist dossiermap op de Autocad server
Sub PrintAllebestanden()

'Ga naar het tabblad Start
    Sheets("Start").Select

 'Opslaan van het gehele bestand in de juiste dossiermap
    ActiveWorkbook.SaveAs Filename:="\\flsrv-01\Autocad\Collstrop\Offertes\2008\" & Range("B7").Text & "\" & Range("B7").Text & "_" & Range("A1")

 'Printen van de tabbladen als ->ankers in beton <- en ->manueel beslag<-
    Dim i As Integer

    If Sheets(1).Range("R6").Value = 1 And Sheets(1).Range("R5").Value = 1 Then
        
        For i = 1 To ThisWorkbook.Worksheets.Count
        
            With Worksheets(i)
                Select Case .Name
                    Case "Uithaallijst"
                        
                        .PageSetup.PrintArea = "$A$2:$F$43"
                        .PrintOut Copies:=2
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        
                    Case "Beslag - In Beton": .PrintOut Copies:=2
                    
                    Case "Plaatsing - In Beton": .PrintOut Copies:=2
                    
                    Case "Montage beslag": .PrintOut Copies:=2
                    
                    Case "Productie fiche": .PrintOut Copies:=1
                End Select
            End With
        Next
    End If

Dit slaat eerst het bestand op, en dan gaat het tabbladen printen. Er wordt een lus gemaakt doorheen alle tabbladen
van dat bestand. Hoe? door een teller te laten lopen van 1 tot het aantal bladen. Dus i is eerst 1, dan 2, dan 3, enz. tot als het einde bereikt is.

De code neemt dus het eerste blad, dan het 2de, dan het 3de. De code neemt telkens telkens de naam van dat
blad en vergelijkt dat met de Cases. Als er een case EXACT overeenkomt met de naam van het blad, springt de
code naar die case en wordt hetgeen achter die case staat, uitgevoerd. Komt er geen enkele van de Cases overeen,
dan doet het voor dat tabblad niets. Het is een lus, dus sowieso wordt daarna verder gegaan met het volgende blad,
tot alle bladen gedaan zijn.

Op internet staat onnoemelijk veel informatie. Bvb. als ik google op

Excel integer

dan krijg ik 1.420.000 resultaten... Een integer wil zeggen: een geheel getal, dus geen kommagetal.

Wigi
 
Dank je wel Wigi voor je vorige post #24.
Deze werkt uitstekend en ik snap ook precies hoe het werkt. Dank je wel voor de uitleg!!!


Code:
'Printen van alle tabbladen die nog aanwezig zijn in het bestand
Sub PrintAllebestanden()

    Dim i As Integer

    If Sheets(1).Range("R6").Value And Sheets(1).Range("R5").Value = 1 Then
        
        
        For i = 1 To ThisWorkbook.Worksheets.Count

            Select Case ThisWorkbook.Worksheets(i).Name
                Case "Uithaallijst"
                    
                    Sheets(i).PageSetup.PrintArea = "$A$2:$F$43"
                    Sheets(i).PrintOut Copies:=2
                    [COLOR="red"]Sheets(i).PageSetup.PrintArea = "$A$1:$F$43"
                    Sheets(i).PrintOut Copies:=1[/COLOR]
                    
                Case "Beslag - In Beton", "Plaatsing - In Beton", "Montage beslag": Sheets(i).PrintOut Copies:=2
                Case "Productie fiche": Sheets(i).PrintOut Copies:=1
            End Select
        Next
    End If
End Sub

Wigi

Hey hey

Ik heb iets opgezocht in verband met deze code (in het rood) maar het komt precies niet goed.
Als hij de code in het rood afdrukt mag hij de cellen A6:A20 niet afdrukken, dus had ik gedacht aan:

Code:
                        .Range("A6:A20").Select
                        .Selection Cut
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .Range("A6").Select
                        .ActiveSheet.Paste

ik heb al vanalles aangepast in de code vb alleen ".Range("A6:A20").cut". Maar het lukt me niet.
Of moet ik het anders oplossen?
 
Laatst bewerkt:
Hoi

Gemakkelijk is de rijen te verbergen en weer zichtbaar te maken.

Code:
                        .Rows("6:20").Hidden = True
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .Range("A6").Select
                        .Rows("6:20").Hidden = False

Wigi
 
Hoi

Gemakkelijk is de rijen te verbergen en weer zichtbaar te maken.

Code:
                        .Rows("6:20").Hidden = True
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .Range("A6").Select
                        .Rows("6:20").Hidden = False

Wigi

Wigi, Dat had ik ook al gevonden, maar het probleem is dat er naast de cellen andere informatie staat die wel moet afgeprint worden en eigenlijk zijn het alleen maar die cellen (A6:A20) die niet geprint mogen worden en al de rest wel die er rond staat.
 
Code:
                        .Range("A6:A20").Cut .[B]Range("ergens anders")[/B]
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .[B]Range("ergens anders")[/B].Cut .Range("A6:A20")

Wigi
 
Code:
                        .Range("A6:A20").Cut .[B]Range("ergens anders")[/B]


Wigi[/QUOTE]

Wigi, ik heb het veranderd in mijn code maar het werkt niet zoals ik het heb aangepast.
Ik heb "ergens anders" aangepast naar: H6 en ik heb ook H6:H20 geprobeerd, maar steeds de foutmelding: u kunt niet een deel van een samengevoegde cel wijzigen.
[CODE]
                    Case "Uithaallijst"
                        
                        .PageSetup.PrintArea = "$A$2:$F$43"
                        .PrintOut Copies:=2
                        .Range("A6:A20").Cut .Range("H6")
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .Range("H6:H20").Cut .Range("A6")

Al heb ik ook al gemerkt, Als ik deze range zal knippen, zal ik mijn celrand ook kwijt zijn hé?

grts
 
maar steeds de foutmelding: u kunt niet een deel van een samengevoegde cel wijzigen.

Samengevoegde cellen gebruiken leidt dan ook heel vaak tot problemen, het blijkt maar eens weer. Doe eens een voorbeeldbestandje erbij, en ook wat de code moet doen.
 
Samengevoegde cellen gebruiken leidt dan ook heel vaak tot problemen, het blijkt maar eens weer. Doe eens een voorbeeldbestandje erbij, en ook wat de code moet doen.

Ik heb wel alles verwijderd want het bestand was veel te groot, nu blijft alleen het gene wat ik nodig heb over en van de code ook.
Zou het niet beter zijn mocht je via de macro de tekst in de cellen A6:A20 in het wit zetten en dan na het printen terug in het zwart? of is dit niet mogelijk?
grtz
 

Bijlagen

Code:
'Printen van alle tabbladen die nog aanwezig zijn in het bestand + opslaan van het bestand in de juist dossiermap op de Autocad server
Sub PrintAllebestanden()

 'Printen van de tabbladen als ->ankers in beton <- en ->manueel beslag<-
    Dim i As Integer
        
        For i = 1 To ThisWorkbook.Worksheets.Count
        
            With Worksheets(i)
                Select Case .Name
                    Case "Uithaallijst"
                        
                        .PageSetup.PrintArea = "$A$2:$F$43"
                        .PrintOut Copies:=2
                        .Range("A6:A20").Font.ColorIndex = 2
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .Range("A6:A20").Font.ColorIndex = 1
                                            
                End Select
            End With
        Next
        
End Sub

Wigi
 
Code:
                        .PageSetup.PrintArea = "$A$2:$F$43"
                        .PrintOut Copies:=2
                        .Range("A6:A20").Font.ColorIndex = 2
                        .PageSetup.PrintArea = "$A$1:$F$43"
                        .PrintOut Copies:=1
                        .Range("A6:A20").Font.ColorIndex = 1

End Sub

Wigi

Dank je wel Wigi
Na veel zoeken is het mij ook juist gelukt en ik kwam het juist vertellen hoe ik het gedaan had, maar je was mij dus voor. Toch bedankt Wigi-man!!!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan