PDA

Vollständige Version anzeigen : Sub-Aufruf aus anderem VBAProject


Alexxx
09.08.2001, 08:28
Hi,
wie kann ich in einer Prozedur einer Datei (zB SHEET1.XLS) eine Funktion/Prozedur einer anderen Datei (zB PERSONAL.XLS) aufrufen?

' PERSONAL.XLS
Sub CentralSubForAllProjects()
....
End Sub

' SHEET1.XLS
Sub WhatEver()
Call CentralSubForAllProjects()
'Dieser Aufruf funktioniert nicht
End Sub

Danke, Alex

<font size="1" face="Century Gothic">Moderatorenanmerkung: die Überarbeitung dieses Beitrages ist im Zuge der Arbeiten zu sehen, die durch den Wechsel der Forensoftware zum 01.01.2003 verursacht wurden.

Es wurden in diesem Beitrag Links korrigiert, die auf falsche Adressen zeigten...</font>

Stefan Kulpa
09.08.2001, 11:54
<font face="Verdana" size="2">
Hallo,

dieser Beitrag ist wohl besser im <a href="http://www.ms-office-forum.net/forum/forumdisplay.php?s=&forumid=29" target="_blank">Excel-Forum</a> aufgehoben und befindet sich nun auch dort ...

Gruß, Stefan</font>

<font size="1" face="Century Gothic">Moderatorenanmerkung: die Überarbeitung dieses Beitrages ist im Zuge der Arbeiten zu sehen, die durch den Wechsel der Forensoftware zum 01.01.2003 verursacht wurden.

Es wurden in diesem Beitrag Links korrigiert, die auf falsche Adressen zeigten...</font>

Stema
10.08.2001, 09:08
Hallo Alex,

hier mal ein Auszug aus der Hilfe:
<BLOCKQUOTE><font size="1" face="Arial, Verdana, Helvetica, sans-serif">Zitat:</font><HR>If you give the same name to two different procedures in two different projects, you must specify a project name when you call that procedure. For example, the following procedure calls the Main procedure in the MyModule module in the MyProject.vbp project.

Sub Main()
[MyProject.vbp].[MyModule].Main
End Sub

Note Different applications have different names for a project. For example, in Microsoft Access, a project is called a database (.mdb); in Microsoft Excel, it's called a workbook (.xls).[/quote]
Ich habe es einmal ausprobiert, habe es aber nicht zum Laufen bekommen. Ohne Projekt findet er die Procedure allerdings auch nicht. Bin an der Lösung auch sehr interessiert.

------------------

Gruß Stema
------------------

jinx
11.08.2001, 20:24
<font size="2" face="Century Gothic">Moin, Alexx,

zuerst eine Vorüberlegung: sowie die Arbeitsmappe von dem Rechner kopiert, archiviert oder transportiert wird, muss ebenfalls eine Sicherung der verknüpften Datei/en erfolgen oder die Verbindung muss nachhaltig unterbrochen werden – sei die verknüpfte Mappe nun personl.xls als Standardmakromappe in XL2000 oder eine andere. Dieses Problem gilt aber ebenso nach Umwandlung in ein Add-In....

Leider gibst Du die Version von Excel nicht an, daher gehe ich vom leichtesten Fall für mich aus: Excel2000.

Der Befehl lautet: Application.Run "Dateiname.xls!Name_des_Makros"

Als Beispiel:
Ich habe zwei Arbeitsmappen angelegt: Mappe1 und Wunder in beliebigem Verzeichnis. In Mappe 1 soll auf Tabelle 3 beginnend bei C5 bis G5 der Startwert erhöht werden; anschließend wird Umformen aufgerufen (transponieren der Zahlen).

In Mappe1 befindet sich folgendes Makro:
Public Sub Aufruf()
Dim Zahl As Integer
Dim i As Integer
Zahl = 5
Worksheets("Tabelle3").Activate
Range("C5").Value = Zahl
For i = 1 To 5
Range("C5").Select
Zahl = Zahl + i
ActiveCell.Offset(0, i).Value = Zahl
Next
Application.Run "Wunder.xls!Umformen"
Range("C5").Select
End Sub

In Wunder (gleiches Verzeichnis):
Sub Umformen()
Range("C5:h5").Select
Application.CutCopyMode = False
Selection.Copy
Range("c7").Select
Selection.PasteSpecial Paste:=xlAll, Operation:=xlNone, SkipBlanks:=False _
, Transpose:=True
Application.CutCopyMode = False
Range("C5").Select
End Sub

Ich hoffe, dass Du danach Ausschau gehalten hast...

<font color="#808080" size="3" face="Arial Black">HTH
jinx</font>
<font size="2" face="Century Gothic">---bekannt für Beiträge, die das Forum nicht (mehr) braucht---</font>

<font size="1" face="Century Gothic">Moderatorenanmerkung: die Überarbeitung dieses Beitrages ist im Zuge der Arbeiten zu sehen, die durch den Wechsel der Forensoftware zum 01.01.2003 verursacht wurden.

Es wurde in diesem Beitrag die Signatur angepasst...</font>

Alexxx
13.08.2001, 15:20
Hi,

Stema: danke, genauso sollte es eigentlich gehen, hab Deine Version aber auch nicht zum Laufen gebracht, funktioniert hat hingegen:
jinx: WUNDERbar, genau dasisses, funktioniert tadellos...

Danke Euch,
Alex