Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel VBA-数据刷新后添加超链接丢失_Vba_Excel_Hyperlink - Fatal编程技术网

Excel VBA-数据刷新后添加超链接丢失

Excel VBA-数据刷新后添加超链接丢失,vba,excel,hyperlink,Vba,Excel,Hyperlink,在从SQL视图更新数据后,我尝试通过宏设置超链接 当我在宏下面运行时,它确实设置了超链接(临时),但一旦完成,超链接将再次消失 如果我运行子系统,将超链接设置为自己的超链接,那么一切都会正常工作,因此我相信一定是数据刷新导致了问题。在我看来,在设置超链接之后,刷新似乎再次被调用 我的代码: Sub loadData() With ActiveWorkbook.Connections("myConnection").OLEDBConnection .CommandText = "EXEC

在从SQL视图更新数据后,我尝试通过宏设置超链接

当我在宏下面运行时,它确实设置了超链接(临时),但一旦完成,超链接将再次消失

如果我运行子系统,将超链接设置为自己的超链接,那么一切都会正常工作,因此我相信一定是数据刷新导致了问题。在我看来,在设置超链接之后,刷新似乎再次被调用

我的代码:

Sub loadData()

With ActiveWorkbook.Connections("myConnection").OLEDBConnection
    .CommandText = "EXEC [dbo].[View] '" & Parameter & "'"
    ActiveWorkbook.Connections("myConnection").Refresh
End With

Call addHyperlink

' more code to follow....
Exit Sub
End Sub

Sub addHyperlink()

Dim sht As Worksheet
Dim LastRow As Long

Set sht = ThisWorkbook.Worksheets("Data_Base")
LastRow = sht.Cells(sht.Rows.Count, "B").End(xlUp).Row

For i_count = 6 To LastRow
    If Worksheets("Data_Base").Range("B" & i_count).Value = "" Then
        Exit For
    Else
        Cells(i_count, 2).Hyperlinks.Add Anchor:=Cells(i_count, 2), _
         Address:="http://www." & Cells(i_count, 2).Value, _
         TextToDisplay:=Cells(i_count, 2).Value
    End If
Next i_count

End Sub
我尝试了几种方法来修改数据刷新的属性,但没有成功


有什么想法吗?

看来问题可能来自于
“要遵循的代码更多…”
,所以请添加它!;)我已经把所有的东西都删除了,除了给AddHyperlinkSub的电话。运气不好。我相信这是与部分的联系。很抱歉,我刚才没有想到这一点,但事实上,这一定是你的联系!事实上,刷新需要一些时间,但一旦给出刷新顺序,代码将立即继续。因此,添加
DoEvents:Application.Wait(现在()+TimeValue(“00:00:10”)):DoEvents
(3行),然后刷新必须完成,超链接将保持不变!)似乎问题可能来自
“要遵循的代码更多…”
,因此请添加它!;)我已经把所有的东西都删除了,除了给AddHyperlinkSub的电话。运气不好。我相信这是与部分的联系。很抱歉,我刚才没有想到这一点,但事实上,这一定是你的联系!事实上,刷新需要一些时间,但一旦给出刷新顺序,代码将立即继续。因此,添加
DoEvents:Application.Wait(现在()+TimeValue(“00:00:10”)):DoEvents
(3行),然后刷新必须完成,超链接将保持不变!)