在列的最后一行添加超链接
Add Hyperlink in Last Row from Column
我正在使用 Excel 2013 并希望通过 VBA 实现目标。
我有一个 Worksheet (Table1)、一个 FileDialog 和一个 AddHyperlink-Function。我想要做的是将超链接添加到 A 列第一个空行中的 sheet。
Sub addLink()
Dim ws As Worksheet
Dim rng As Range
Set ws = Sheets("Tabelle1")
Dim fd As FileDialog
Dim selectedPaths() As String
Dim I As Integer
Set fd = Application.FileDialog(msoFileDialogOpen)
Set rng = Sheets("Tabelle1").Range("A1")
With fd
.AllowMultiSelect = True
.Title = "Select your File(s)"
.InitialFileName = ""
If .Show = -1 Then
ReDim selectedPaths(.SelectedItems.Count - 1)
For I = 0 To .SelectedItems.Count - 1
selectedPaths(I) = .SelectedItems(I + 1)
With ws
.Hyperlinks.Add Anchor:=rng, Address:=selectedPaths(I)
End With
Next I
End If
End With
Set fd = Nothing
End Sub
这段代码运行良好。我唯一无法构建的是最后一行。我已经看到,我需要这样的东西
Sub LastRowInOneColumn()
Dim LastRow As Long
With ActiveSheet
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
End Sub
谁能帮我把这两个代码块放在一起?提前致谢。
而不是
Set rng = Sheets("Tabelle1").Range("A1")
使用
With Sheets("Tabelle1")
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
Set rng = .Cells(LastRow + 1, "A")
End With
我正在使用 Excel 2013 并希望通过 VBA 实现目标。
我有一个 Worksheet (Table1)、一个 FileDialog 和一个 AddHyperlink-Function。我想要做的是将超链接添加到 A 列第一个空行中的 sheet。
Sub addLink()
Dim ws As Worksheet
Dim rng As Range
Set ws = Sheets("Tabelle1")
Dim fd As FileDialog
Dim selectedPaths() As String
Dim I As Integer
Set fd = Application.FileDialog(msoFileDialogOpen)
Set rng = Sheets("Tabelle1").Range("A1")
With fd
.AllowMultiSelect = True
.Title = "Select your File(s)"
.InitialFileName = ""
If .Show = -1 Then
ReDim selectedPaths(.SelectedItems.Count - 1)
For I = 0 To .SelectedItems.Count - 1
selectedPaths(I) = .SelectedItems(I + 1)
With ws
.Hyperlinks.Add Anchor:=rng, Address:=selectedPaths(I)
End With
Next I
End If
End With
Set fd = Nothing
End Sub
这段代码运行良好。我唯一无法构建的是最后一行。我已经看到,我需要这样的东西
Sub LastRowInOneColumn()
Dim LastRow As Long
With ActiveSheet
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
End Sub
谁能帮我把这两个代码块放在一起?提前致谢。
而不是
Set rng = Sheets("Tabelle1").Range("A1")
使用
With Sheets("Tabelle1")
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
Set rng = .Cells(LastRow + 1, "A")
End With