Hallo beste VBA experts!
Ik kom niet verder met een code die ik aan het samensprokkelen ben.
Ik wil in een bestaand excel formulier, welke door mijzelf op vba niveau beveiligd is een nieuwe module inmporteren.
Dit lukt mij enkel als ik de code laat lopen met onderbrekingspunten. Dus als ik alles regel per regel overloop lukt het wel.
Echter als de code loopt zonder onderbrekingspunten werkt het niet.
Iemand een idee hoe dit komt, of hoe ik dit kan verhelpen?
Werking:
Eerst map selecteren van de documenten waar ik de module wil in importeren.
Vervolgens de map selecteren waarin de module staat.
Voorbeeld bestand in bijlage.
Hieronder de code:
Ik kom niet verder met een code die ik aan het samensprokkelen ben.
Ik wil in een bestaand excel formulier, welke door mijzelf op vba niveau beveiligd is een nieuwe module inmporteren.
Dit lukt mij enkel als ik de code laat lopen met onderbrekingspunten. Dus als ik alles regel per regel overloop lukt het wel.
Echter als de code loopt zonder onderbrekingspunten werkt het niet.
Iemand een idee hoe dit komt, of hoe ik dit kan verhelpen?
Werking:
Eerst map selecteren van de documenten waar ik de module wil in importeren.
Vervolgens de map selecteren waarin de module staat.
Voorbeeld bestand in bijlage.
Hieronder de code:
Code:
Sub CmdImportModule_Click()
Dim DIRECTORY As String, FILENAME As String, SHEET As Worksheet, i As Integer, j As Integer, WACHT As String
Dim ONTVANGER As String, BESTANDEN As String
Dim xFileDialog As FileDialog
Dim WS As Worksheet
Application.ScreenUpdating = False
On Error Resume Next
'MAP SELECTEREN VAN DE AAN TE PASSEN DOCUMENTEN
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Kies een map met de aant te passen documenten."
If xFileDialog.Show = -1 Then
DIRECTORY = xFileDialog.SelectedItems(1)
Sheets("STARTBLAD").Range("C11").Value = DIRECTORY
End If
If DIRECTORY = "" Then Exit Sub
'MAP SELECTEREN VAN DE OP TE HALEN BESTANDEN (USERFORMS of MODULES)
Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
xFileDialog.AllowMultiSelect = False
xFileDialog.Title = "Kies de map met de in te voegen bestanden."
If xFileDialog.Show = -1 Then
BESTANDEN = xFileDialog.SelectedItems(1)
Sheets("STARTBLAD").Range("C12").Value = BESTANDEN
End If
If BESTANDEN = "" Then Exit Sub
'CODE UITVOEREN BIJ ALLE EXCEL BESTANDEN IN DE GESELECTEERDE MAP
FILENAME = Dir(DIRECTORY & "\*.xls")
ONTVANGER = DIRECTORY & "\" & FILENAME
Do While FILENAME <> ""
Workbooks.Open (DIRECTORY & "\" & FILENAME)
MsgBox (DIRECTORY & "\" & FILENAME)
'PASWOORD ERAF HALEN
Const conPW As String = "PASWOORD" '=PASWOORD
Call SendKeys("%(d)P" & "VBAProject" & ActiveWorkbook.Name & "{ENTER}" & conPW & "{ENTER}", True)
'MODULE IMPORTEREN
Workbooks(FILENAME).VBProject.VBComponents.Import BESTANDEN & "\Beveiliging.bas"
Workbooks(FILENAME).Save
Workbooks(FILENAME).Close
FILENAME = Dir()
Loop
End Sub