|    | 
     ▼コジコジ さん: 
>あるシートに記入いてあるデータを別のブックのシートへ登録しようと思うのですが、ハイパーリンクの設定で悩んでます。 
>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関数の引数は、ヘルプで確認してみてください。 
 | 
     
    
   |