|
こんにちは
見逃してましたm(__)m
>GetOpenFilenameでデータ元のパスを取得したく
Sub test()
Dim strDBPath As String
Dim v As Variant
v = Application.GetOpenFilename("エクセルブック(*.xls),*.xls", , , , False)
If VarType(v) = vbBoolean Then Exit Sub
strDBPath = "='" & Replace(v, Dir(v), "[" & Dir(v) & "]") & "Sheet1'!A1"
With Range("A1:J2").Offset(1)
.ClearContents
.Formula = strDBPath
.Value = .Value
End With
End Sub
こんな感じです。
>データ元のばらばらに並んだ、1つまたは複数のセルを、
>まとまりごとに個別に指定するのもこのやり方でよいのでしょうか。
出来るはずです。
ADO等でDBとして扱える形式では無いようなので、リンクでデータを取得する方が
うまく行くと思います。
>ただ、
>> ・また、インポート元のファイルが処理対象のファイルか否かをチェックした
>>いのですが、リンクの方法で、インポート元のファイルを開く前、あるいは、イ
>>ンポート先のセルにリンクを貼る前に、インポート元のファイルのセルの値を取
>>得することはできるのでしょうか。
>についてはどうでしょうか。もしご存知なら教えてください。
Application.ExecuteExcel4Macro(ほぼリンク式)
で調べられますけど、リンクで判定に必要なデータだけインポートして判断しても
いいのではと思います。
|
|