Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Quellcode einfügen excel 2003 - vba

Frage Microsoft Microsoft Office

Mitglied: Dudelidude

Dudelidude (Level 1) - Jetzt verbinden

14.07.2011 um 11:26 Uhr, 4729 Aufrufe, 2 Kommentare

Hallo liebe Leute!

Es geht um folgendes.Ich hab einen Quellcode aus einer anderen Abteilung bekommen, der es mir ermöglicht die Adresssuche im Outlook in einem Excelsheet zu öffnen.
Allerdings versteh ich den Code nicht und weiß nicht wo ich den reinkopieren soll.

Er soll in das sheet "WorkingGroupList". Wie kann ich den Code darein kopieren? Der Clue ist,dass ich das Makro nicht einer Schaltfläche zuweisen muss,sonder es immer da funktioniert,wo die Zeile ="x" ist und die Spalte ="y" !

Hoffe jemand kann mir das erklären


Das ist der Code:

Sub ADNameQuery(Name As String, iRow As Long, iCol As Long)

'Es folgen Makros für das Aufrufen des Outlook Adressbuchs

Dim GC As Object, Child As Object, rootDomaine As Object, objConnection As Object
Dim objCommand As Object, objRecordSet
Set GC = GetObject("GC:")
For Each Child In GC
Set rootDomain = Child
Next
Set objConnection = CreateObject("ADODB.Connection")
Set objCommand = CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection
objCommand.CommandText = "<GC://" & rootDomain.Name & ">;(samAccountName=" & Name & ");displayName,telephoneNumber,mobile,mail,sn,givenName,department,physicalDeliveryOfficeName,co;subTree"
Set objRecordSet = objCommand.Execute
If Not objRecordSet.EOF Then
Cells(iRow, iCol).Value = objRecordSet.Fields("sn").Value
Cells(iRow + 1, iCol).Value = objRecordSet.Fields("givenName").Value
Cells(iRow + 4, iCol) = objRecordSet.Fields("mail").Value
Cells(iRow + 5, iCol).Value = objRecordSet.Fields("department").Value
Cells(iRow + 2, iCol).Value = objRecordSet.Fields("telephoneNumber").Value
Cells(iRow + 3, iCol).Value = objRecordSet.Fields("mobile").Value
'Cells(iRow, iCol).Value = objRecordSet.Fields("displayName").Value
'Cells(iRow + 7, iCol).Value = objRecordSet.Fields("physicalDeliveryOfficeName").Value
'Cells(iRow + 6, iCol).Value = objRecordSet.Fields("co").Value
Cells(iRow - 1, iCol).Select
End If
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Nam As String, iRow As Long, iCol As Long, Memo As String
If Target.Cells.Count > 1 Then GoTo ende
iRow = Target.Row
iCol = Target.Column
If Cells(1, iCol).Value = "x" And Cells(iRow, 1).Value = "y" Then
Target.Value = "Bitte warten!"
Call Wer(Memo, Nam)
Target.Value = ""
End If
If Memo <> "" Then Call ADNameQuery(Memo, iRow, iCol)
ende:
End Sub
Sub Wer(ByRef Memo As String, ByRef Nam As String)
Dim objRecipColl As Object, OutLookObject As Object, NmSpace As Object
Set OutLookObject = CreateObject("Outlook.Application")
Set NmSpace = CreateObject("MAPI.Session")
If Not NmSpace Is Nothing Then
NmSpace.logon "", "", False, False
End If
Memo = ""
Nam = ""
On Error GoTo ende
Set objRecipColl = NmSpace.AddressBook()
Memo = Memoid(objRecipColl.Item(1).Address)
Nam = objRecipColl.Item(1).Name
ende:
Err.Clear
On Error GoTo 0
End Sub
Function Memoid(Nam As String) As String
Dim i As Long, j As Long
j = 1
nochmal:
i = InStr(j, Nam, "cn=", vbTextCompare)
If i > 0 Then
j = i + 1
GoTo nochmal
End If
If j > 1 Then
Memoid = Right(Nam, Len(Nam) - j - 1)
Else
Memoid = ""
End If
End Function
Mitglied: 83928
14.07.2011 um 12:46 Uhr
Ohne den Code betrachtet zu haben - den VBA-Editor öffnest Du bei E2003 über ->Extras->Makros->Visual Basic Editor. Da gehört der Code rein. Deine Arbeitsmappe sollte ein Tabellenblatt namens WorkingGroupList beinhalten....
Bitte warten ..
Mitglied: Dudelidude
14.07.2011 um 13:27 Uhr
Ja das hab auch so gemacht,mein Fehler war, dass ich den Code in ein Modul gelegt habe und es aber nur funktioniert,wenn man den Code in das entsprechende Tabellenblatt legt. Dummer Fehler, der viel Zeit und Nerven kostete.
Trotzdem Danke für die Hilfe!
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
"Microsoft Excel kann die Daten nicht einfügen" (2)

Frage von arik12 zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel-Formel oder VBA (7)

Frage von nicki01 zum Thema Microsoft Office ...

VB for Applications
gelöst VBA Excel Skript - Hilfe! (1)

Frage von 133202 zum Thema VB for Applications ...

VB for Applications
SNMP Abfrage in EXCEL über VBA (7)

Frage von SebastianL zum Thema VB for Applications ...

Neue Wissensbeiträge
Ubuntu

Ubuntu 17.10 steht zum Download bereit

(3)

Information von Frank zum Thema Ubuntu ...

Datenschutz

Autofahrer-Pranger - Bewertungsportal illegal

(8)

Information von BassFishFox zum Thema Datenschutz ...

Windows 10

Neues Win10 Funktionsupdate verbuggt RemoteApp

(8)

Information von thomasreischer zum Thema Windows 10 ...

Microsoft

Die neuen RSAT-Tools für Win10 1709 sind da

(2)

Information von DerWoWusste zum Thema Microsoft ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 Ordnerfreigabe (21)

Frage von Xaero1982 zum Thema Windows 10 ...

Router & Routing
Allnet - VDSL2 Modem - SFP (mini-GBIC) (20)

Frage von Dobby zum Thema Router & Routing ...

Monitoring
Netzwerk-Monitoring Software (18)

Frage von Ghost108 zum Thema Monitoring ...

Windows 10
Seekrank bei Windows 10 (15)

Frage von zauberer123 zum Thema Windows 10 ...