Hier de gehele macro:
Sub Test1()
'Deze test zorgt ervoor dat er geen lege tarieven in SBClient komen
Sheets("scherm2").Select
Range("E4").Activate
If ActiveCell.Value = 0 Then Fout Else Starten
(vraag: hij moet stoppen als het geen waarde in de cel staat. Als er nu (#waarde!) of(#N/B) in deze cel komt wordt ik naar de editor verwezen dat ik er een fout in heb staan. Wat moet ik hier veranderen???)
End Sub
Sub Fout()
response = MsgBox("Er is geen tarief geselecteerd!", 0)
End Sub
Sub Starten()
response = MsgBox("Wilt u starten met het kopieren?", 4)
If response = vbYes Then KopieerScherm1
End Sub
Sub Test2()
timeout
timeout
timeout
Sheets("scherm2").Select
Range("E4").Activate
If ActiveCell.Value = 0 Then Fout Else KopieerScherm1
End Sub
Sub KopieerScherm1()
' Kopieert scherm1
Application.ScreenUpdating = False 'zorgt ervoor dat het scherm weer ververst wordt
(vraag: Voor de Macro gaat kopieeren wil ik graag dat het klembord leeg gemaakt wordt.
Ik heb dit al met clipboard.clear geprobeerd maar krijg het niet voor elkaar. Graag advies!!!)
Sheets("Scherm1").Select
Range("A3:A26").Select
Selection.Copy
Sheets("Scherm2").Select
Range("A2").Select
Application.ScreenUpdating = True 'zorgt ervoor dat het scherm weer ververst wordt
Doorsturen_SBClient1
End Sub
Sub Doorsturen_SBClient1()
'Stuurt de gekopieerde gegevens van Scherm een en twee door naar SB-Client
AppActivate "sbclient - roadrunner"
timeout
SendKeys "%", True
SendKeys "E", True
SendKeys "P", True
SendKeys "{f2}", True
timeout
timeout
AppActivate "microsoft excel"
KopieerTarieven
End Sub
Sub KopieerTarieven()
'kopieert de tarieven
Application.ScreenUpdating = False 'zorgt ervoor dat het scherm weer ververst wordt
Sheets("Scherm2").Select
Range("A53").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Range("A2").Select
Application.ScreenUpdating = True 'zorgt ervoor dat het scherm weer ververst wordt
Doorsturen_SBClient2
End Sub
Sub Doorsturen_SBClient2()
' Stuurt de tarieven door naar SB-Client.
AppActivate "sbclient - roadrunner"
timeout
SendKeys "%", True
SendKeys "E", True
SendKeys "P", True
SendKeys "{f2}", True
timeout
timeout
AppActivate "microsoft excel"
ClearKLembord
End Sub
Sub ClearKLembord()
'Dit maakt het klembord leeg
Application.ScreenUpdating = False 'zorgt ervoor dat het scherm weer ververst wordt
Sheets("Scherm2").Select
Range("F70").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F71").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F72").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F73").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F74").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F75").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F76").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F77").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F78").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F79").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F80").Select
Selection.Copy
Sheets("Scherm2").Select
Range("F81").Select
Selection.Copy
Application.ScreenUpdating = True 'zorgt ervoor dat het scherm weer ververst wordt
Verhogen
End Sub
Sub Verhogen()
'Dit verhoogt de teller en gaat naar volgende tarief.
Application.ScreenUpdating = False 'zorgt ervoor dat het scherm weer ververst wordt
Sheets("Teller").Select
Range("A5").Select
Selection.Copy
Range("A3").Select
Selection.PasteSpecial Paste:=xlValues
Sheets("Scherm2").Select
Range("A2").Select
Application.ScreenUpdating = True 'zorgt ervoor dat het scherm weer ververst wordt
'Doorgaan
Test2
End Sub
Sub Doorgaan()
'Dit start de macro weer vanaf het begin.
response = MsgBox("Wilt u doorgaan naar het volgende tarief?", 4)
If response = vbYes Then Test2
End Sub
Sub timeout()
For i = 1 To 100
Application.StatusBar = "Please Wait: " + Str$(i)
Next i
Application.StatusBar = ""
End Sub
Sub EnkelVerhogen()
'Deze sub verhoogt enkel de teller en zorgt ervoor dat volgende tarief in de rekenreeks komt
Application.ScreenUpdating = False 'zorgt ervoor dat het scherm weer ververst wordt
Sheets("Teller").Select
Range("A5").Select
Selection.Copy
Range("A3").Select
Selection.PasteSpecial Paste:=xlValues
Sheets("Scherm2").Select
Range("A2").Select
Application.ScreenUpdating = True 'zorgt ervoor dat het scherm weer ververst wordt
End Sub