2

マクロプログラミングで現在のディレクトリ変数を取得する方法を知る必要があります。次のようにデスクトップにファイルを保存しています:C:\ Users \ deadlock \ Desktop\data.html。C:\ Users \ deadlock \ Desktop \を現在の直接変数に置き換えることは可能ですか?

これが私の小さなコードです:

 ActiveWorkbook.ShowPivotChartActiveFields = True
With ActiveWorkbook.PublishObjects.Add(xlSourceSheet, _
    "C:\Users\deadlock\Desktop\data.htm", "Sheet1", "", xlHtmlStatic, "data_9438", "")
    .Publish (True)
    .AutoRepublish = False

コードスニペットは高く評価されます。

前もって感謝します..

4

2 に答える 2

4

現在のディレクトリは VBA を介して利用できcurdir()、現在のワークブックのディレクトリは を介し​​て利用できますActiveWorkbook.Path

編集;

Dim current As String
current = CurDir$()
'// root dirs have a \ others do not; normalize
If Right$(current, 1) <> "\" Then current = current & "\"

With ActiveWorkbook.PublishObjects.Add(xlSourceSheet, _
    current & "data.htm", "Sheet1", "", xlHtmlStatic, "data_9438", "")
    .Publish (True)
    ....
于 2012-10-25T12:03:45.260 に答える
1

C:\Users\deadlock\Desktop\ を現在の直接変数に置き換えることは可能ですか?

これはあなたがしようとしていることですか?

Option Explicit

Sub Sample()
    Dim strPath As String
    Dim Myar As Variant

    strPath = "C:\Users\deadlock\Desktop\data.htm"

    Myar = Split(strPath, "\")

    '~~> This would give you something like
    '~~> C:\Users\Siddharth Rout\Documents\data.htm
    Debug.Print CurDir & "\" & Myar(UBound(Myar))
End Sub
于 2012-10-25T12:05:47.757 に答える