Hallo,
ich würde gerne wiessen ob ACT! eine Schnittstelle besitzt, von der einer Andere Applikation erfahren kann, welcher Kontakt gerade aktiv ist.
... Oder gibt es vielleicht eine Datei, in der der aktive Konatkt vermerkt wird (ähnlich wie die verwendetete Seriennummer)?
Beste Grüße
David Kluge
			
			
									
						
										
						Aktiven Kontakt bestimmen ...?
Moderatoren: Ingrid Weigoldt, Schlesselmann, Robert Schellmann
- 
				awagner - Gast
Hi alle,
Ja: die Schnittstelle heißt OLE - hängt dann aber davon ab, ob die "Zielanwendung" auch OLE unterstützt.
Zum Beispiel so - Folgendes Beispiel unter test.bas abspeichern und in MS Excel Visual Basic Editor importieren. Dann nur noch rausfinden, wie es vom Excel aus gestartet wird (im VB Editor geht's mit F5 aber den will man ja nicht immer in Anspruch nehmen müssen)...
Hoffe es hilft - klappt bei mir mit Act/Excel 2000, bringt allerdings das Act-Fenster immer über das Excel-Fenster obendrüber,
Andreas Wagner
PS. Und ich hoffe, es ist nicht gegen die Board-Policy, solche skripte zu posten.
			
			
									
						
										
						Ja: die Schnittstelle heißt OLE - hängt dann aber davon ab, ob die "Zielanwendung" auch OLE unterstützt.
Zum Beispiel so - Folgendes Beispiel unter test.bas abspeichern und in MS Excel Visual Basic Editor importieren. Dann nur noch rausfinden, wie es vom Excel aus gestartet wird (im VB Editor geht's mit F5 aber den will man ja nicht immer in Anspruch nehmen müssen)...
Code: Alles auswählen
Sub ACTauslesen()
 ' Variablen deklarieren
 Dim objApp As Object
 Dim objViews As Object
 Dim objContact As Object
 Dim strKontakt As String
 ' Öffne Datenbank
 Set objApp = CreateObject("ACTOLE.APPOBJECT")
 If objApp.IsDBOpen = False Then
    MsgBox "Keine Datenbank offen, also kein Kontakt aktiv."
 Else
    ' MsgBox "Folgende Datenbank ist geöffnet und wird benutzt: " & objApp.GetOpenDBName
    Set objViews = objApp.Views
    Set objContact = objViews.GetView(1)
    ' Jetzt können wir über objContact.GetField(xy) alle Feldwerte auslesen...
    
    strKontakt = objContact.GetField(26) & " / " & objContact.GetField(25)
    ' ... und damit irgendwas anfangen
    MsgBox strKontakt
    ' Aufräumen
    Set objContact = Nothing
    Set objViews = Nothing
 End If
 Set objApp = Nothing
End Sub
Andreas Wagner
PS. Und ich hoffe, es ist nicht gegen die Board-Policy, solche skripte zu posten.