Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1408to1412
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Hyperlink

Hyperlink
11.02.2015 15:10:01
willi
Hallo Experten,
Ausgangspunkt, ich schreibe eine Rechnung in Word 2007, (F: /Datei/Rechnungsordner). Die Rechnung erhält eine ReNr. und die wird in Excel 2007 eingetragen (Spalte R9: Erweitert sich ständig).
Jetzt möchte ich erreichen, dass z. B. in Excel z. B. Zelle R9 automatisch ein Hyperlink erzeugt wird. Beim Eintragen der nächsten ReNr. in (z. B. R10) usw. soll wieder ein automatisch ein Hyperlink gesetzt werden.
Wenn ich dann auf die Zelle mit dem Hyperlink klicke (z. B. R10), dann soll die entsprechende Rechnungsdatei in Word geöffnet werden. Ist das machbar oder liege ich falsch.
Danke im Voraus,
Willi

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
bedingt möglich ...
11.02.2015 15:37:44
neopa
Hallo Willi,
... wenn die Dateien immer im gleichen Verzeichnis, nach einer definierten Dateinamensnomenklatur und unter Verwendung der jeweiligen RechnungsNr. abgelegt sind, dann über die Funktion HYPERLINK().
Gruß Werner
.. , - ...

AW: bedingt möglich ...
11.02.2015 15:50:40
willi
Hallo Werner,
danke für die schnelle Antwort.
Was verseht man darunter.....nach einer definierten Dateinamensnomenklatur, und wie ist das machbar.
Gruß Willi

einfach gesagt, ...
11.02.2015 16:01:05
neopa
Hallo Willi,
... dass die Dateinamen nicht nach eigenem Gusto sondern nach einer festen verbindlichen Vorgabe vergeben werden müssen. Damit ist dieser Name auch durch eine Bildungsvorschrift generierbar.
Angenommen: Die ersten vier Zeichen des Dateinamens sind "RNr_" gefolgt von einer 4stelligen Jahreszahl einem Unterstrich und einer laufenden dreistelligen Rechnungsnummer und die Dateiextension sei DOCx. Dieser Name wäre mit Excel dann mit einer einfachen Formel als entsprechender Parameter für die HYPERLINK()-Funktion in Excel generierbar.
Gruß Werner
.. , - ...

Anzeige
AW: einfach gesagt, ...
11.02.2015 16:29:45
willi
Hi Werner,
OK, dass habe ich verstanden und funktioniert auch. Es geht aber nicht automatisch, man muss jede einzelne Rechnung verlinken. Danke Willi

mußt Du nicht ...
11.02.2015 16:46:14
neopa
Hallo Willi,
... wenn du mit der Funktion HYPERLINK() eine entsprechende Formel konstruierst.
Gruß Werner
.. , - ...

AW: Hyperlink
12.02.2015 08:02:01
Beverly
Hi Willi,
das könntest du mit folgendem Code lösen:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strPfad As String
If Target.Column = 18 Then
strPfad = "F:\Datei\Rechnungsordner\"
If Target.Count = 1 And Target  "" Then
If Dir(strPfad & Target.Value & ".docx")  "" Then
ActiveSheet.Hyperlinks.Add Anchor:=Target, Address:=strPfad & _
Target.Value & ".docx", TextToDisplay:=Target.Value
End If
End If
End If
End Sub

Rechtsklick auf den Tabellenreiter -&gt Code anzeigen und den Code ins rechte (obere) Codefenster kopieren.


Anzeige
AW: Hyperlink
12.02.2015 10:53:21
willi
Hi Beverly,
danke für deine Antwort. Ich habe ein Problem, in diesem Workscheet ist schon ein Makro mit dem selben Name. Deshalb kommt der Fehler (Mehrdeutiger Name: Workscheet_Change), was kann man deran ändern. Bis jetzt konnte ich es noch nicht testen.
Gruß Willi

AW: Hyperlink
12.02.2015 11:38:27
Beverly
Hi Willi,
es kann nur 1 Worksheet_Change-Ereignis (pro Tabellenblatt) geben, also müssen beide zu einer gemeinsamen Prozedur zusammengeführt werden. Ich kann leider nur so allgemein antworten, da ich deinen schon vorhandenen Code nicht kenne.


Anzeige
AW: Hyperlink
12.02.2015 11:54:35
willi
Hi Beverly,
wenn ich dir den Code schicken würde, könntest du ihn dann zusammen führen?
Gruß Wilii

AW: Hyperlink
12.02.2015 12:17:40
Beverly
Hi Willi,
poste ihn einfach hier in deinem nächsten Beitrag.


AW: Hyperlink
12.02.2015 12:23:51
willi
Hi Beverly,
hier ist der Code.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Row > 3 And Target.Cells.Count = 1 Then
Application.EnableEvents = False
Select Case Target.Column
Case 12
With Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Interior
If LCase(Target.Value) = "x" Then
.ColorIndex = 36
.Pattern = xlSolid
Else
.ColorIndex = xlColorIndexNone
.Pattern = xlSolid
End If
End With
Case 13
With Range(Cells(Target.Row, 1), Cells(Target.Row, 13)).Interior
If LCase(Target.Value) = "x" Then
.ColorIndex = 4
.Pattern = xlSolid
Target.Offset(0, 1).Value = Date
Target.Offset(0, -1).ClearContents
Target.Offset(0, 2).Value = Target.Offset(0, -4).Value
Else
.ColorIndex = xlColorIndexNone
.Pattern = xlSolid
Target.Offset(0, 1).ClearContents
Target.Offset(0, 2).ClearContents
End If
End With
End Select
Application.EnableEvents = True
End If
End Sub
Gruß Willi

Anzeige
AW: Hyperlink
12.02.2015 12:34:13
Beverly
Hi Willi,
man muss nur noch eine weitere Case-Anweisung hinzufügen für Spalte 18:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim strPfad As String
If Target.Row > 3 And Target.Cells.Count = 1 Then
Application.EnableEvents = False
Select Case Target.Column
Case 12
With Range(Cells(Target.Row, 1), Cells(Target.Row, 12)).Interior
If LCase(Target.Value) = "x" Then
.ColorIndex = 36
.Pattern = xlSolid
Else
.ColorIndex = xlColorIndexNone
.Pattern = xlSolid
End If
End With
Case 13
With Range(Cells(Target.Row, 1), Cells(Target.Row, 13)).Interior
If LCase(Target.Value) = "x" Then
.ColorIndex = 4
.Pattern = xlSolid
Target.Offset(0, 1).Value = Date
Target.Offset(0, -1).ClearContents
Target.Offset(0, 2).Value = Target.Offset(0, -4).Value
Else
.ColorIndex = xlColorIndexNone
.Pattern = xlSolid
Target.Offset(0, 1).ClearContents
Target.Offset(0, 2).ClearContents
End If
End With
Case 18
strPfad = "F:\Datei\Rechnungsordner\"
If Target.Count = 1 And Target  "" Then
If Dir(strPfad & Target.Value & ".docx")  "" Then
ActiveSheet.Hyperlinks.Add Anchor:=Target, Address:=strPfad & _
Target.Value & ".docx", TextToDisplay:=Target.Value
End If
End If
End Select
Application.EnableEvents = True
End If
End Sub


Anzeige
AW: Hyperlink
12.02.2015 12:40:57
willi
Hi Beverly,
danke ich werde es ausprobieren.
Gruß Willi

AW: Hyperlink
12.02.2015 13:41:39
willi
Hi Beverly,
jetzt habe ich es getestet. Leider funtzt es nicht.
Wenn ich jetzt in die Zelle "R20" eine Textformatierte Zahl schreibe z.B. 0186 passiert nichts, auch nicht wenn ich die Zelle als Zahl formatiere. Es wird kein Hypwelink erzeugt nach Return!
Gruß Willi

was ist bei Dir LW F: für ein Laufwerk? ...
12.02.2015 13:50:14
neopa
Hallo Willi,
... wenn es ein Netzlaufwerk ist, musst Du mit UNC-Adresse arbeiten und auch das wäre ohne VBA mit nur einer HYPERLINK()-Formel die Du nach unten kopieren kannst, realisierbar.
Gruß Werner
.. , - ...

Anzeige
AW: Hyperlink
12.02.2015 14:25:38
Beverly
Hi Willi,
dann setze doch mal einen Haltepunkt auf die Prozedur und gehe dann im Einzelschrittmodus durch.


AW: Hyperlink
12.02.2015 15:12:36
willi
Hi Beverly,
tut mir leid auch wenn ich den Code nur alleine einspiele geht es nicht. Er stopt auch nicht.
Wenn derkomplette Code eingspielt ist, dann stopt er nach de Case 13 in der zweite Zeile IF LCase.....
Gruß Willi

AW: Hyperlink
12.02.2015 15:28:10
Beverly
Hi Willi,
mein Code steht unter Case 18, nicht unter Case 13 - an den anderen Teilen habe ich nichts verändert, nur meinen Teil hinzugefügt.
Was sagt denn der Debugger genau? Lade doch mal deine Mappe hoch, damit man sich das mal ansehen kann.


Anzeige
AW: Hyperlink
12.02.2015 15:48:11
willi
Hi Beverly,
jier ist die Mappe,https://www.herber.de/bbs/user/95717.xlsm.
Gruß Willi

AW: Hyperlink
12.02.2015 16:41:18
Beverly
Hi Willi,
ich habe den Code getestet - ich erhalte nirgendwo eine Fehlermeldung.
Wenn kein Hyperlink eingetragen wird, dann gibt es die betreffende Datei nicht - hat sie vielleicht nicht die Endung ".docx" sondern eine andere? Die Dateiendung musst du dann im Code (an 2 Stellen) anpassen.


AW: Hyperlink
12.02.2015 18:00:02
willi
Hi Beverly,
ist OK, es lag an der Endung. Nochmals Danke an alle für eure Hilfe.
Bis zum nächsten mal,
Gruß Willi
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige