1

Excel スプレッドシートをマップされたドライブから SharePoint に移動する方法を見つけようとしています。

このスプレッドシートを使用して、ジョブとジョブ番号のアクティブなリストを保持しているエンジニアリング部門があります。

次のように分解します。

ユーザーが Job Tracking スプレッドシートを開いて情報を入力する 最後のタブには、別の Excel ブックに移動する赤いボタンがあり、次の利用可能なジョブ番号を提供し、赤いボタンがある Job Tracking スプレッドシートで生成されます。

赤いボタンがクリックされたときに実行されるコード:

Private Sub CommandButton1_Click()
    Dim JTS As String
    Dim yRow, UseRow
    Dim Msg, Style, Title, Help, Ctxt, Response, Msg1, Msg2, Msg3

    UnProtect_Files

    If Worksheets("HANDOVER").Range("Job_No") <> "" Then GoTo JobFill1
    If Len(Worksheets("HANDOVER").Range("C4")) < 1 Then GoTo WhereCust1

    JTS = "P:\Job Tracking\Job Tracking Spreadsheet.xls"

    On Error GoTo Lock1

    OpBkNow:
    Workbooks.Open (JTS)

    'Look for available Job# in Job Tracking Spreadsheet

    For yRow = 23 To 10000
    If Workbooks("Job Tracking Spreadsheet.xls").Worksheets("Proposed-Active").Cells(yRow, 2) = "" Then UseRow = yRow: Exit For Next yRow
    'This should never happen, but if there is no available Job#, print msg and exit sub
    If UseRow < 23 Or UseRow > 10000 Then GoTo RowNtFnd


    'Make changes to Job Tracking Spreadsheet
    ThisWorkbook.Worksheets("Formulas").Range("B98") = Workbooks("Job Tracking Spreadsheet.xls").Worksheets("Proposed-Active").Cells(UseRow, 1)
    Workbooks("Job Tracking Spreadsheet.xls").Worksheets("Proposed-Active").Cells(UseRow, 2) = ThisWorkbook.Worksheets("HANDOVER").Range("C4")
    ThisWorkbook.Worksheets("HANDOVER").Range("Job_No") = ThisWorkbook.Worksheets("Formulas").Range("B98")
    Workbooks("Job Tracking Spreadsheet.xls").Worksheets("Proposed-Active").Cells(UseRow, 3) = ThisWorkbook.Worksheets("HANDOVER").Range("D7")

    GoTo QuitSb2

    RowNtFnd:
    Msg = "There are no available Job Numbers in the Job Tracking Spreadsheet.  You will need to manually add one."
    Style = vbOKOnly: Title = "Job Number Not Found": Help = "": Ctxt = 0
    Response = MsgBox(Msg, Style, Title, Help, Ctxt)

    QuitSb2:
    Workbooks("Job Tracking Spreadsheet.xls").Close SaveChanges:=True
    GoTo QuitSb1

    WhereCust1:
    'No Owner Name Given
    Msg = "An entry in the CUSTOMER field is required when generating a Job Number!"
    Style = vbOKOnly: Title = "Need Customer Info - Try Again": Help = "": Ctxt = 0
    Response = MsgBox(Msg, Style, Title, Help, Ctxt)
    GoTo QuitSb1

    JobFill1:
    'There is already a generated job number
    Msg1 = "A Job Number ("
    Msg2 = Worksheets("HANDOVER").Range("Job_No")
    Msg3 = ") has already been generated for this job!"

    Msg = Msg1 & Msg2 & Msg3
    Style = vbOKOnly: Title = "Job Number Exists": Help = "": Ctxt = 0
    Response = MsgBox(Msg, Style, Title, Help, Ctxt)
    GoTo QuitSb1

    Lock1:
    'There is already a generated job number
    Msg1 = "The Job Tracking spreadsheet is currently in use.  "
    Msg2 = "Please try to generate a Job Number later."
    Msg = Msg1 & Msg2
    Style = vbOKOnly: Title = "File In Use": Help = "": Ctxt = 0
    Response = MsgBox(Msg, Style, Title, Help, Ctxt)
    GoTo QuitSb1

    QuitSb1:

    'RER 3-29-05 remove auto file create as per Scott Penatzer request
    'Create_New_File

    Protect_Files
End Sub

このすべてを別の方法で行う方が簡単かもしれませんが、最終的には、ビジネスは何も変更しないことを望んでいます。SharePoint で複数のドキュメントを相互に通信させ、ネットワーク共有を完全に回避することは可能ですか? できるだけ早くアドバイスしてください。

よろしくお願いします。

4

1 に答える 1

0

はい、SharePoint を介してファイルを通信させることができます。SharePoint のライブラリに移動し、リボンから [エクスプローラーで開く] をクリックします。これにより、ファイルのフォルダーの場所が表示されます。マッピングされたドライブの場所と同じようにその URL を参照し、SharePoint ファイルを開く/更新する/保存できるはずです。幸運を。

于 2013-05-14T14:33:26.883 に答える