Private Sub Opslaan_Click()
If Range("C4").Value = "" Then
Range("C4").Interior.ColorIndex = 37
a = MsgBox("Vul een aansluitnummer in de blauw gekleurde cel", vbOKOnly)
Exit Sub
End If
With Range("A4:H" & ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row - 1)
.Sort Key1:=Range("B4"), Order1:=xlDescending, Header:=xlGuess
.Interior.ColorIndex = 0
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
With .Font
.Name = "Verdana"
.Size = 10
.ColorIndex = xlAutomatic
End With
Dim Bestandsnaam As String
Dim Sysdate
Dim tel As Integer, Letter As String
Dim lastSaved As Date, antw As Integer
Sysdate = Format(Date, "yyyymmdd")
tel = 0
Do
If tel > 0 Then
Letter = "-" & LCase(Replace(Left(Cells(1, tel).Address, 3), "$", "")) 'vertaal teller naar een kolomletter
Else
Letter = ""
End If
Bestandsnaam$ = "G:\" & [C4] & "-" & Sysdate & Letter & ".xls" 'bestand heet straks zo
If Dir(Bestandsnaam$) = "" Then 'bestaat die naam al in die directory ?
If tel > 0 Then
antw = MsgBox("Er is eerder vandaag een Borderel voor deze werkgever opgeslagen" & Chr(10) & Chr(10) & "Bestand wordt opgeslagen met een volg-letter", vbYesNo, " Het bestand bestaat al.....")
Else
antw = vbYes
End If
If antw = vbYes Then
Unprotect
ActiveSheet.Shapes("Opslaan").Delete 'voordat bestand word opgeslagen word de macroknop verwijderd
ActiveSheet.Shapes("Invoegen").Delete 'voordat bestand word opgeslagen word de macroknop verwijderd
Application.ScreenUpdating = False
Drij = Range("C4").End(xlDown).Row + 3
Urij = Range("A65500").End(xlUp).Row - 1
For verwijder = Urij To Drij Step -1
Rows(verwijder).EntireRow.Delete
Next
Application.ScreenUpdating = True
'Protect 'werkboek beschermen voordat word opgeslagen
ActiveWorkbook.SaveAs Bestandsnaam$ 'bestand opslaan
MsgBox "Het bestand " & "'" & [C4] & "-" & Sysdate & Letter & "'" & " is opgeslagen," & Chr(10) & Chr(10) & "en uitgeprint!"
End If
tel = 0 'teller op 0 zetten om uit de loop te komen
Else
tel = tel + 1 'bestand bestond al, dus teller 1 ophogen
lastSaved = FileDateTime(Bestandsnaam$)
End If
If tel > Columns.Count Then MsgBox "Paniek": Exit Sub
Loop While tel <> 0
End With
ActiveSheet.PrintPreview 'afdrukvoorbeeld
'ActiveSheet.PrintOut copies:=1 'effectief afdrukken
End Sub
Private Sub Invoegen_Click()
Regel = InputBox("Hoeveel regels wil je erbij?")
ActiveSheet.Unprotect
On Error GoTo Fout
For i = 1 To Regel
Rij = ActiveSheet.Range("F65500").End(xlUp).Row - 1
Rows(Rij).EntireRow.Copy
Rows(Rij).EntireRow.Insert Shift:=xlShiftDown
Rows(Rij + 1).PasteSpecial Paste:=xlFormulas
Next i
Fout: ActiveSheet.Protect
End Sub