2014-10-15 3 views
1

Я хочу, чтобы создать кнопку в Excel, которая связывает с:гиперссылок в VBA

http://datafeed.api.productserve.com/datafeed/download/apikey/50f70c7de11f99fe127d7ad4c8e37e31/cid/97,98,142,144 , ... ,567,569/fid/4319/columns/merchant_product_id,merchant_category,brand_name,product_name,mpn,search_price,aw_deep_link,specifications,valid_from,valid_to,in_stock,warranty,aw_product_id,merchant_image_url,description/format/csv/delimiter/,/compression/gzip/adultcontent/1/

Я вырезал большой участок в середине, но это просто длинная последовательность чисел, разделенных запятыми. В общей сложности URL-адрес составляет 1939 символов.

Копирование URL-адреса в браузер работает отлично - это ссылка для загрузки, и файл открывается, как следует.

код для кнопки прост:

Private Sub download_button_Click() 

Dim feed_hyperlink As String 
feed_hyperlink = *"http://data... "* 

ActiveWorkbook.FollowHyperlink feed_hyperlink 

End Sub 

Когда я запустить процедуру, я получаю следующее сообщение об ошибке:

Run-time error '5': Invalid procedure call or argument

гиперссылка клетка ограничивает URL назначения до 255 символов. Является ли ограничение персонажа тем, что вызывает проблему здесь, или есть еще одна проблема?

ответ

2

Я думаю, что вы правы. Вероятно, это слишком длинный, поскольку самый длинный, который я могу использовать до получения той же ошибки, - 1033 символов;

Sub Main() 

    Dim h As String 
    h = String(1034, "a") 

    Debug.Print Len(h) 

    ActiveWorkbook.FollowHyperlink h 

End Sub 
+0

Thanks. Я попытался использовать сокращенное URL-адрес, чтобы решить проблему, но он не работает ... Должен найти способ обойти его. – apkdsmith

+0

может создать маску URL-адреса - так, например, «http: // localhost» и перенаправить локальный хост на правильный URL-адрес? idk просто идея –

Смежные вопросы