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, 9042 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 ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Vmware
ESXi 6 Active Directory (3)

Frage von VerwirrterUser zum Thema Vmware ...

Windows Server
Active Directory-Verwaltungscenter macht Probleme (1)

Frage von MrFuzz zum Thema Windows Server ...

Heiß diskutierte Inhalte
Switche und Hubs
LAG zwischen Cisco SG300 und Dlink DGS1100 herstellen - wie? (18)

Frage von White-Rabbit2 zum Thema Switche und Hubs ...

CPU, RAM, Mainboards
Hardware Fragen (12)

Frage von xaver-2 zum Thema CPU, RAM, Mainboards ...

Grafikkarten & Monitore
Neue Graifkkarte - kein Bild (10)

Frage von bestelitt zum Thema Grafikkarten & Monitore ...

Exchange Server
gelöst Exchange 2013 - Kontakte aus CSV importieren (9)

Frage von hesper zum Thema Exchange Server ...