|
▼コジコジ さん:
>あるシートに記入いてあるデータを別のブックのシートへ登録しようと思うのですが、ハイパーリンクの設定で悩んでます。
>ADODBでブックを開かずに登録しています。
>通常のデータは問題ないのですが、あるフィールドにハイパーリンクを設定した状態で登録するにはどうすれば良いでしょうか。
>サンプルコードです。
>======================================================================
>Private Sub test()
>Dim myCon As New ADODB.Connection
>Dim myRS As New ADODB.Recordset
>Dim myFile As String
>Dim conSTR As String
>Dim EntTime As Date
>
> myFile = "\\Server1\\test\testDB.xls"
> conSTR = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
> "Extended Properties=Excel 8.0;" & _
> "Data Source=" & myFile
> myCon.Open conSTR
> myRS.Open "[テスト$]", conSTR, adOpenStatic, adLockPessimistic
> With myRS
> .AddNew
> .Fields!部署 = Sheets("CTRL").Range("部署")
> .Fields!社員NO = Sheets("CTRL").Range("社員NO")
> .Fields!依頼者 = Sheets("CTRL").Range("氏名")
> .Fields!文書リンク = xxxxxx
> myRS.Update
> End With
> myRS.Close
> Set myRS = Nothing
> myCon.Close
> Set myCon = Nothing
>End Sub
>======================================================================
>.Fields!文書リンク のフィールドに任意の文字列(例えばABC)にサーバー上の特定のファイル("\\Server1\test\ABC.xls")にハイパーリンクを設定した状態で登録したいのですが上手くいきません。何方かご教授願えませんでしょうか。
ADOからExcelの機能であるハイパーリンクを設定することはできないと思います。
正し、フィールドの値にHYPERLINK関数で入力すればできるかも。(試してません)
HYPERLINK関数の引数は、ヘルプで確認してみてください。
|
|