Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Via Script Telefonnummern in Active Directory importieren

Frage Entwicklung VB for Applications

Mitglied: 59769

59769 (Level 1)

10.01.2008, aktualisiert 10:49 Uhr, 9101 Aufrufe, 8 Kommentare

Hallo zusammen

Ich kenne mich mit Scripting leider noch nicht so aus. Habe im Forum schon einige Beiträge gefunden, die "mein" Problem behandeln, lösen konnte ich es damit aber noch nicht ;-(

Ich muss im Active Directory bei allen Usern die Telefonnummer hinterlegen. Die Nummern und Usernamen habe ich in einem Excelfile. Das File heisst Kontaktdaten.xls und liegt auf meinem Laufwerk D.

Hier mein bisheriger Script dazu:

Set XL = WScript.CreateObject("Excel.Application")
XL.Workbooks.Open "D:\Kontaktdaten.xls"
i = 1 'Zeilennummer der ersten Datenzeile
'Do While XL.Worksheets(1).Cells(i,1).Value <> ""
strVorname = XL.Worksheets(1).Cells(i,1).Value
strNachname = XL.Worksheets(1).Cells(i,2).Value
strBenutzername = XL.Worksheets(1).Cells(i,3).Value
strPhone = XL.Worksheets(1).Cells(i,4).Value


Set RootDSE = GetObject("LDAP://RootDSE")
path = "LDAP://CN=Users," & RootDSE.Get("defaultNamingContext")
Set objContainer = GetObject(path)


Set objUser = objContainer.GetObject("user","CN=" & strBenutzername)
objUser.telephonenumber =

objUser.SetInfo

i = i + 1
Loop

WScript.Echo "Telefonnummer erfolgreich eingetragen!"
WScript.Quit







Es liest mir den richtigen Benutzernamen aus meinem Excelfile und wenn ich direkt im Script eine Nummer hinter "objUser.telephonenumber = " wird diese ins AD geschrieben, zum richtigen Benutzer.
Ich möchte aber, dass es mir die Nummer auch aus meinem Excelfile ausliest und dann beim entsprechenden Benutzer einträgt. Leider habe ich bis jetzt nicht rausgefunden, wie ich auf mein "strPhone" verweisen kann, dass es mir dann dieses "strPhone" einträgt.
Auch funktioniert der Loop nicht, wenn ich es so hinterlege. Kann mir jemand helfen?
Mitglied: Bayano
10.01.2008 um 09:54 Uhr
Also du musst einfach die Variable der Telefonnumer gleichsetzen:

objUser.telephonenumber = strPhone

Bei mir funktioniert es so.
Bitte warten ..
Mitglied: 59769
10.01.2008 um 10:08 Uhr
Bei mir funktioniert das leider nicht so...ich bekomme den Fehler:
(17,1) (null): Unbekannter Fehler.
Zeile 17 ist die mit dem objUser.telephonenumber = strPhone
Bitte warten ..
Mitglied: Bayano
10.01.2008 um 10:12 Uhr
Was steht denn bei dir in der Variable strPhone, kannst du die vorher mal ausgeben lassen per msgbox.
Bitte warten ..
Mitglied: 59769
10.01.2008 um 10:18 Uhr
Wau!

Jetzt bin ich aber echt erstaunt! Ich habe die Excel Datei nur mal so zum testen gemacht und bei der Telefonnummer einfach 33 reingeschrieben. Jetzt habe ich aufgrund deiner Frage mal schnell eine "richtige" Telefonnummer reingeschrieben und es geht.
Tausend Dank! ich verstehe zwar nicht ganz, wieso das so ist, aber hauptsache es geht jetzt!
Vielen, vielen Dank!!
Bitte warten ..
Mitglied: 59769
10.01.2008 um 10:28 Uhr
Ich habe noch eine kleine andere Frage, wenn ich mal jemanden gefunden habe, der sich damit auskennt
Wir haben in unserem AD verschiedene OU's und die Benutzer sind in einer OU die heisst Benutzer. Dort haben wir dann auch die GPO's drauf. Wenn ich in meinem Script die Zeile
path = "LDAP://CN=Users," & RootDSE.Get("defaultNamingContext") auf
path = "LDAP://CN=Benutzer," & RootDSE.Get("defaultNamingContext") ändere, bekomme ich immer die Fehlermeldung dass ein solches Objekt auf dem Server nicht vorhanden sei. Kann ich den Script nur über den StandartADOrdner "Users" laufen lassen?
Bitte warten ..
Mitglied: Bayano
10.01.2008 um 10:42 Uhr
Nein, du kannst es überall drüber laufen lassen.

Nur wenn du es auf eine OU anwenden möchtest muss es "OU=" heißen und nicht "CN=".
Bitte warten ..
Mitglied: 59769
10.01.2008 um 10:44 Uhr
Danke, Du bist "mein" Genie
Bitte warten ..
Mitglied: Bayano
10.01.2008 um 10:49 Uhr
Falls du sonst noch irgendwelche Fragen haben solltest zu VBScript und dem AD einfach melden.

MFG
Bayano
Bitte warten ..
Ähnliche Inhalte
Windows Server
Serie: Active Directory Zertifikatsdienste (Teil 1-8)

Link von pewa2303 zum Thema Windows Server ...

Windows Userverwaltung
gelöst Active Directory: Basisordner automatisch füllen lassen? (5)

Frage von Rene12345 zum Thema Windows Userverwaltung ...

Neue Wissensbeiträge
Batch & Shell

Batch - ein paar Basics die man kennen sollte

Tipp von Pedant zum Thema Batch & Shell ...

Microsoft

Restrictor: Profi-Schutz für jedes Window

(6)

Tipp von AlFalcone zum Thema Microsoft ...

Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
gelöst Benutzer lässt sich nur an einem Clientcomputer anmelden (16)

Frage von Ammann zum Thema Windows Server ...

LAN, WAN, Wireless
gelöst Netzwerk in 2 Teile trennen (11)

Frage von pattex zum Thema LAN, WAN, Wireless ...

Batch & Shell
gelöst Gruppenzugehörigkeit von AD Usern ermitteln - die Perfektion fehlt (11)

Frage von Stefan007 zum Thema Batch & Shell ...