Visual Basic Forum

Visual Basic Forum
für VB6 und VB.NET Programmierer
 
RegistrierenRegistrieren  LoginLogin
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten
Autor
Nachricht
KaktusJack
Newbie
Newbie

Anmeldedatum: 10.12.2010
Beiträge: 1

Einsteiger braucht Hilfe bei Application.OnTime
Verfasst am: 10.12.2010, 09:50

Hallo,
ich bin neu hier und brauch mal eure Hilfe!
Ich bin Einsteiger und habe mir aus Schnipseln aus dem Netz mal nen Programm geschrieben womit ich Gruppenmitlieder einer Sicherheitsgruppe aus einer Active Directory auslesen kann.
Das ganze wird in Excel ausgegeben und per Click auf einer Zelle mit Inhalt Gruppenname wird in einer anderen Zelle die Mitglieder ausgegeben.
Das funktioniert auch alles super! Das einzige Problem ist die Application.OnTime.
Sobald ich das ExcelArbeitsblatt schließe, öffnet es sich direct wieder, obwohl ich meines (relativ bescheidenen) Wissens die App beende. Hab im I-Net schon viel herum gesucht, aber nur diese Lösung gefunden.
Anbei mal der Code (der komplett in einem Modul verfasst ist)

Code:

Dim r As Range
Sheets(1).Activate
Range("a2:a1000").Clear
Set Groups = GetObject("LDAP://OU=Sicherheitsgruppen,OU=firma,DC=domäne,DC=local")
Groups.Group = Array("group")
Set r = Range("a2")
For Each objGroup In Groups
          r = objGroup.Name
          r = "   " & Right(r, Len(r) - 3)
          Set r = r.Offset(1)
Next
Sheets(2).Activate

End
End Sub

Public Sub Ldap_User()
On Error Resume Next
Dim A As Range

    Set A = Range("c1")
    Range("c2:c1000").Clear

    strLDAP = "LDAP://cn=" & A & ",OU=Sicherheitsgruppen,OU=firma,DC=domäne,DC=local"

    Set Group = GetObject(strLDAP)
    Set A = Range("c2")
    For Each Treffer In Group.Members
          B = Left(Treffer.Name, 7)
          If B = "CN=SIC-" Then
            A = "   " & Right(Treffer.Name, Len(Treffer.Name) - 3)
            Set A = A.Offset(1)
          End If
    Next
   
    strLDAP = "LDAP://cn=" & A & ",OU=Sicherheitsgruppen,OU=firma,DC=domäne,DC=local"

    Set Group = GetObject(strLDAP)
    For Each Treffer In Group.Members
          A = "   " & Treffer.FullName
          If A <> "" Then
            Set A = A.Offset(1)
          End If
    Next
    gruppenmitglieder
End Sub

Sub gruppenmitglieder()

Application.OnTime Now + TimeValue("00:00:02"), "gruppenmitglieder", , True

Dim v
If ActiveSheet.Name = Sheets(1).Name Then
        With ActiveCell
            v = .Value
            If v <> Range("C1") Then
                Range("C1").Value = v
                Ldap_User
            End If
        End With
    End If
End Sub

Sub WorkSheets_BeforeClose(Cancel As Boolean)



 Application.OnTime Now + TimeValue("00:00:02"), "gruppenmitglieder", , False


End Sub


Wenn da einer helfen könnte wäre super! Crying or Very sad
 
Neues Thema eröffnen   Neue Antwort erstellen    Visual Basic Forum Foren-Übersicht -> [VB6] Fragen - Antworten

Tags: application, hilfe

 
 Verwandte Themen   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge [suche] Tuturials winsock & daten senden 983 09.06.2011, 13:19
Keine neuen Beiträge [Video] *.dll & *.ocx Installer 2608 06.03.2008, 21:19
Keine neuen Beiträge ListView speichern & laden 1331 05.08.2008, 13:32
Keine neuen Beiträge Registry & Co Fragen 1203 03.05.2007, 10:57
Keine neuen Beiträge Listbox speichern & laden 2266 22.03.2007, 21:25
 


[ Time: 0.1141s ][ Queries: 82 (0.0584s) ][ GZIP on - Debug on ]