if-statement

Status
Niet open voor verdere reacties.

vinno97

Gebruiker
Lid geworden
18 feb 2011
Berichten
207
ik heb hier een klein stukje van mijn code die volgens visual basic studio niet goed is maar ik weet niet wat er fout is:(:
Private Sub Backup_knop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Backup_knop.Click

If RadioButton1.Checked then Copy_Folder()
ElseIf RadioButton2.Checked Then Copy_Files_Dates()
ElseIf RadioButton3.Checked Then Move_Certain_Files_To_New_Folder()
End If
End Sub

zelf dacht ik dat het mischien dit kon zijn maar dat werkte ook niet:evil:

Private Sub Backup_knop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Backup_knop.Click

If
ElseIf RadioButton1.Checked then Copy_Folder()
ElseIf RadioButton2.Checked Then Copy_Files_Dates()
ElseIf RadioButton3.Checked Then Move_Certain_Files_To_New_Folder()
End If
End Sub

kan iemand mij alstublieft helpen?

bvd
 
Radiobuttons zijn niet Checked; die hebben een waarde. Selectievakjes kun je met een Check afvangen. Vermoedelijk heb je de optierondjes in een frame gezet, want je wilt neem ik aan dat er maar één actief kan zijn. En in dat geval lees je de waarde uit het Frame uit, niet de individuele optierondjes.
 
bedankt voor de tip maar hoe doe ik dat? ik heb zelf op internet deze gevonden maar die deed ook niks:
If RadioButton1.Value = True Then
Copy_Folder()
ElseIf RadioButton2.Value = True Then
Copy_Files_Dates()
ElseIf RadioButton3 = True Then
Move_Certain_Files_To_New_Folder()
End If
 
Zo lukt het wel bij mij hoor, welsiwaar in VBA maar dat mag geen verschil geven.
Bij indrukken "Backup" knop krijg ik de juiste melding in de immediate window.
Code:
Private Sub cmdBackup_Click()
    Call trial
End Sub

Private Sub trial()
    If optOne.Value = True Then
        Debug.Print "Opt 1"
    ElseIf optTwo.Value = True Then
        Debug.Print "Opt 2"
    End If
End Sub

Ben je zeker dat je code wel doorlopen wordt?
Zet daar ergens eens een break point.


Eigenlijk heb je die ElseIf toestanden zelfs niet nodig.
Dit lukt even goed
Code:
Private Sub trial2()
    If optOne.Value = True Then Debug.Print "Opt 1 - trial 2"
    If optTwo.Value = True Then Debug.Print "Opt 2 - trial 2"
End Sub
 
Laatst bewerkt:
We hebben het hier zeker niet over VBA, maar over Visual Basic Studio? Da's een ander forum; ik zou de vraag daar naartoe verplaatsen. VBA is op sommige onderdelen toch net wat anders als VB.
 
ik heb nu deze code:
Code:
Public Class Form1


    Private Sub AfsluitenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AfsluitenToolStripMenuItem.Click
        Close()
    End Sub

    Private Sub Backup_knop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Backup_knop.Click

        Call trial()

    End Sub

    Private Sub trial()

        If RadioButton1.Checked = True Then
            Copy_Folder()
        ElseIf RadioButton3.Checked = True Then
            Move_Certain_Files_To_New_Folder()
        End If

    End Sub

    Sub Copy_Folder()
        'This example copy all files and subfolders from FromPath to ToPath.
        'Note: If ToPath already exist it will overwrite existing files in this folder
        'if ToPath not exist it will be made for you.
        Dim FromPath As String
        Dim ToPath As String

        FromPath = bronfolderdialog.SelectedPath '<< Change
        ToPath = doelfolderdialog.SelectedPath & Format(Now, "yyyy-mm-dd h-mm-ss") '<< Change

        FileCopy(FromPath, ToPath)
        'If you want to create a backup of your folder every time you run this macro
        'you can create a unique folder with a Date/Time stamp.
        'ToPath = "C:\Users\Ron\" & Format(Now, "yyyy-mm-dd h-mm-ss")

    End Sub

    Sub Move_Certain_Files_To_New_Folder()
        'This example move all Excel files from FromPath to ToPath.
        'Note: It will create the folder ToPath for you with a date-time stamp
        Dim FromPath As String
        Dim ToPath As String
        Dim FileExt As String

        FromPath = "D:\Gedeeld\hoi"  '<< Change
        ToPath = "D:\Gedeelde mappen" & Format(Now, "yyyy-mm-dd h-mm-ss") _
                & "\"    '<< Change only the destination folder

        FileExt = "*" & TextBox1.Text   '<< Change
        'You can use *.* for all files or *.doc for word files

        FileCopy(FromPath & FileExt, ToPath)


    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

        bronfolderdialog.ShowDialog()

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

        doelfolderdialog.ShowDialog()

    End Sub


End Class

maar dan krijg ik steeds een melding dat ik het programma niet de rechten heeft, zelfs als ik hem onder beheerder uitvoer!!

kan iemand mij helpen

(en hoe moet ik deze topic verplaatsen naar het goede forum?)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan