2016-07-22 14 views
2

Ich hatte eine Spalte mit Werten in Spalte A, alle mit 6-stelligen Zahlen. Um jede dieser in einen Ordner enthält PDF-Dateien mit den gleichen 6-stelligen Titel Hyperlink eingefügt ich die folgende Funktion in Zelle A2:Eine dynamische Hyperlink-Funktion statisch machen

=HYPERLINK("C:\...Project\" & A2 & ".pdf", A2)

Das funktionierte perfekt, und es nach unten durch die tausend ziehen oder so Zellen erstellt Hyperlinks für jeden Eintrag.

Nun möchte ich jedoch die Spalte A1 durch diese neuen Hyperlinks ersetzen. Ich dachte, ich könnte die Spalte der Hyperlinks einfügen, um die dynamischen Einträge in jeder Zelle zu entfernen, aber das scheint nicht möglich zu sein. Ich bin mir sicher, dass es eine einfachere Lösung gibt. Fehle ich etwas? Kann ich Spalte B unabhängig von Spalte A vor dem Ersetzen erzeugen? Gibt es eine VBA-Lösung?

+0

Ist VBA zulässig? –

+0

Sicher, das wäre auch toll – user1996971

+2

Sieht so aus als wäre ich schon unten drauf geschlagen ... –

Antwort

3

Sie können diese schnell in vba Prozedur ausführen:

Sub CreateHyperlinks() 
Dim cl As Range 

For Each cl In Range("B1:B100").Cells '## Modify as needed 
    cl.Hyperlinks.Add cl, cl.Value, , , cl.Offset(0,-1).Value 
Next 

End Sub 
+0

Ehrfürchtig. Das funktioniert sehr gut. Ich kenne die Funktion in For Loop nicht. Was macht das anders als die Arbeitsblattfunktion, die ich verwendet habe? Vielen Dank! – user1996971

+2

Die Formel '= HYPERLINK()' basiert auf der Adresse und dem Anzeigenamen. In dieser Version sagt er für alles in B1 bis B100 einen Hyperlink, wo die Adresse eine Spalte nach links ist, aber der angezeigte Name ist nur der existierende Wert. Anstatt also eine Spalte mit dem Hyperlink zu erstellen, machen Sie eine vorhandene Spalte zu einem Hyperlink. –

1

Wird durch Zufall jemand es ohne VBA tun möchte, können Sie beispielsweise ersetzen

=HYPERLINK(1,2) 

mit

<html><a href=1>2 

aber in Fällen mit dynamischen Formeln ist es zu kompliziert, weil

=HYPERLINK("C:\...Project\" & A2 & ".pdf", A2) 

wird

="<html><a href=""C:\...Project\" & A2 & ".pdf"">" & A2 

und dann hat es als Text kopiert werden (zum Beispiel die Werte in den Editor einfügen und kopieren Sie sie wieder in Notepad) vor dem Einfügen in Excel.

+0

Ehrfürchtig. Vielen Dank! – user1996971

Verwandte Themen