HWV
Terugkerende gebruiker
- Lid geworden
- 19 feb 2009
- Berichten
- 1.213
Bekijk bijlage catalogus met foto.zip Bekijk bijlage Fotoboek voorbeeld resultaat.xlsx
Beste,
Met behulp van het forum ben ik tot een catalogusprogramma gekomen wat echt goed werkt.
Nu is het zo dat ik op elke nieuwe blad bovenaan een regel krijg waar ik dan de thema kan invullen die van toepassing voor dat blad.
De regel moet het volgende bevatten
- cellen samenvoegen a t/m E
- rijhoogte 50 pixels
- tekstgroot 22
- bold
- pagina einde plaatsen boven de ingevoegde regel.
In de bijlage heb ik het programma gedaan met de code`s hoe ver ik nu ben.
Ook heb ik een bijlage erbijgedaan blad 1 hoe het programma de opbouw nu doet
en blad 2 hoe ik het graag zou willen hebben.
Wie kan mij hier verder mee opweg helpen.
Ik hoor hte graag wie mij kan helpen.
groet HWV
Beste,
Met behulp van het forum ben ik tot een catalogusprogramma gekomen wat echt goed werkt.
Nu is het zo dat ik op elke nieuwe blad bovenaan een regel krijg waar ik dan de thema kan invullen die van toepassing voor dat blad.
De regel moet het volgende bevatten
- cellen samenvoegen a t/m E
- rijhoogte 50 pixels
- tekstgroot 22
- bold
- pagina einde plaatsen boven de ingevoegde regel.
In de bijlage heb ik het programma gedaan met de code`s hoe ver ik nu ben.
Ook heb ik een bijlage erbijgedaan blad 1 hoe het programma de opbouw nu doet
en blad 2 hoe ik het graag zou willen hebben.
Wie kan mij hier verder mee opweg helpen.
Ik hoor hte graag wie mij kan helpen.
groet HWV
Code:
'-------------------------------------------------------------
'Maken van het fotoboek
'--------------------------------------------------------------
Sub VerplaatsFotoboek()
'deze macro bouwt het fotoboek telkens helemaal opnieuw op.
With Application
.ScreenUpdating = False
.DisplayAlerts = False
End With
'maakt het blad2 (fotoboek) leeg
With Blad2.Cells
.EntireRow.AutoFit
.Clear
End With
'telt het aantal regels in de sheet met de namenlijst
cntRows = Sheets("lijst").Range("A2").CurrentRegion.Rows.Count
Blad2.Range("A1,B1,C1").ColumnWidth = 29.14
'stapt door blad1 (lijst) heen in stappen van 3 regels
For i = 1 To cntRows Step 3
Blad1.Cells(i, 1).Resize(3, 3).Copy 'kopieert telkens een bereik van 3 rijen en 2 kolommen
Blad2.Range("A65000").End(xlUp).Offset(2, 0).PasteSpecial , , , Transpose:=True 'zoekt de laats gevulde regel, gaat naar de eerste lege plakt de 3 rijen in de kolommen en de 2 kolommen in 2 rijen
Blad2.Range("A65000").End(xlUp).Offset(-3, 0).EntireRow.Insert 'stapt 1 regel boven fotonaam en voegt een regel in
Blad2.Range("A65000").End(xlUp).Offset(-4, 0).RowHeight = 2.25
Blad2.Range("A65000").End(xlUp).Offset(-3, 0).RowHeight = 157.5 'stelt voor die ingevoegde regel de rijhoogte in
Blad2.Range("A65000").End(xlUp).Offset(5, 0).EntireRow.Insert
Next
Sheets("Fotoboek").Select
Rows("1:1").Select
Selection.Delete Shift:=xlUp
opmaak
InsertPictureFotobook
save1
With Application
.CutCopyMode = False
.ScreenUpdating = True
End With
End Sub
'-------------------------------------------------------------
'Pagina indeling maken in 9 vakken met grijze strepen
'--------------------------------------------------------------
Sub opmaak()
Sheets("Fotoboek").Select
Blad2.Columns("B:B").Insert
Blad2.Columns("D:D").Insert
Blad2.Range("B1,D1").ColumnWidth = 0.25
Blad2.Columns("A:E").Select
With Selection
.HorizontalAlignment = xlLeft
.VerticalAlignment = xlTop
.WrapText = True
End With
Range("A1").Select
Range("B1:B" & Cells(Rows.Count, 1).End(xlUp).Offset(-3).Row).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
Range("D1:D" & Cells(Rows.Count, 1).End(xlUp).Offset(-3).Row).Select
With Selection.Interior
.ColorIndex = 15
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
cntRows = Blad2.UsedRange.Rows.Count + 1
i = 1
For rw = 8 To cntRows Step 5
If i < 3 Then
For col = 1 To 1
With Cells(rw, col)
On Error Resume Next
With Selection.Interior
.Top = Cells(rw - 2, col).Resize(1, 5).Select
.ColorIndex = 15
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
End With
Next
i = i + 1
Else
i = 1
End If
Next
End Sub
'-------------------------------------------------------------
Foto`s toevoegen aan het fotoboek
'--------------------------------------------------------------
Sub InsertPictureFotobook()
Sheets("Fotoboek").Select
cntRows = Blad2.UsedRange.Rows.Count + 1
For rw = 3 To cntRows Step 5
For col = 1 To 5
With Cells(rw, col)
On Error Resume Next
With ActiveSheet.Pictures.Insert("P:\automatisering\mijn afbeeldingen\Website afbeeldingen\472 DS_Photo\" & Cells(rw, col) & ".jpg")
.Top = Cells(rw - 1, col).Top + 4
.Left = Cells(rw - 1, col).Left + 4
.Width = 150 ''(.Heigh / .Width) * Cells(rw, col + 4).Width
.Height = 150 ''Cells(rw, col).Width
End With
End With
Next
Next
End Sub
'-------------------------------------------------------------
'Copy maken van het werkblad, en bestanden afsluiten
'--------------------------------------------------------------
Sub save1()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
With Workbooks.Add
With .Sheets(1)
ThisWorkbook.Sheets("Fotoboek").Copy
End With
End With
Windows("GST1- Eenheden1.xls").Close SaveChanges:=False
Windows("catalogus met foto.xlsm").Close SaveChanges:=False
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub