私は、関連する情報を含むPDFファイルのロギングプロセスを自動化するために、userformを持つデータベースを作成しています。関連情報を含むPDFファイルのロギングプロセスを自動化
これを行うには、ユーザーに図面情報を入力させ、図面があるフォルダを参照してから、図面ファイルをExcelにリストして各図面/ PDFエントリの情報を繰り返します。
これはどのようにコードする必要がありますか?
これは私が(と、それは動作しません)、現在持っているものです。
Sub Button2_Click()
UserForm1.Show
End Sub
Sub startIt()
Dim FileSystem As Object
Dim HostFolder As String
Dim xDirect$, xFname$, InitialFoldr$
InitialFoldr$ = "G:\ScannedDwgArchive\Transportation and BuildingsDrawings\Rocky Harbour\"
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = Application.DefaultFilePath & "\"
.Title = "Please select a folder to list Files from"
.InitialFileName = InitialFoldr$
.Show
If .SelectedItems.Count <> 0 Then
xDirect$ = .SelectedItems(1) & "\"
End If
End With
Set FileSystem = CreateObject("Scripting.FileSystemObject")
DoFolder FileSystem.GetFolder(InitialFoldr$)
End Sub
Sub DoFolder(Folder)
Dim SubFolder
For Each SubFolder In Folder.SubFolders
DoFolder SubFolder
Next
i = Cells(Rows.Count, 21).End(xlUp).Row + 1
Dim File
For Each File In Folder.Files
ActiveSheet.Hyperlinks.Add Anchor:=Cells(i, 21), Address:= _
File.Path, TextToDisplay:=File.Name
i = i + 1
Call TextboxWrite
Next
End Sub
**Sheet 5 is the page in my workbook I am working on. This part of the code never works**
Sub TextboxWrite()
Sheet5.Range(i, 12) = jobNumTextBox.value
Sheet5.Range(i, 15) = TownTextBox.value
Sheet5.Range(i, 16) = YearTextBox.value
Sheet5.Range(i, 18) = StreetTextBox.value
Sheet5.Range(i, 19) = PhaseTextBox.value
Sheet5.Range(i, 20) = cdTextBox.value
End Sub
私は、フォルダを開き、Excelに書き込まれたファイルを持つことができます。そしてそれはそれについてです。これをどのように機能させるには?
更新:私はあなたのガイダンスの一部と新しい発見チュートリアルの後に動作するようになった。ここにあります(完成していませんが機能的です)
Sub Button2_Click()
UserForm1.Show
End Sub
Sub startIt()
Dim FileSystem As Object
Dim HostFolder As String
Dim xDirect$, xFname$, InitialFoldr$
InitialFoldr$ = "G:\ScannedDwgArchive\Transportation and Buildings Drawings\Rocky Harbour\"
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = Application.DefaultFilePath & "\"
.Title = "Please select a folder to list Files from"
.InitialFileName = InitialFoldr$
.Show
If .SelectedItems.Count <> 0 Then
xDirect$ = .SelectedItems(1) & "\"
End If
End With
Set FileSystem = CreateObject("Scripting.FileSystemObject")
DoFolder FileSystem.GetFolder(InitialFoldr$)
End Sub
Sub DoFolder(Folder)
Dim SubFolder
For Each SubFolder In Folder.SubFolders
DoFolder SubFolder
Next
Dim i As Integer ' DECLARE i VARIABLE
i = Cells(Rows.Count, 21).End(xlUp).row + 1
Dim File
For Each File In Folder.Files
ActiveSheet.Hyperlinks.Add Anchor:=Cells(i, 21), Address:= _
File.Path, TextToDisplay:=File.Name
i = i + 1
Call TextboxWrite(i) ' PASS ARGUMENT
Next
End Sub
Sub TextboxWrite(i As Integer) ' RECEIVE ARGUMENT
Worksheets("CIVIL DATABASE").Activate
Dim row As Integer
row = i - 1
ActiveSheet.Cells(row, 12) = UserForm1.jobNumTextBox.value
ActiveSheet.Cells(row, 15) = UserForm1.TownTextBox.value
ActiveSheet.Cells(row, 16) = UserForm1.YearTextBox.value
ActiveSheet.Cells(row, 17) = UserForm1.descTextBox.value
ActiveSheet.Cells(row, 18) = UserForm1.StreetTextBox.value
ActiveSheet.Cells(row, 19) = UserForm1.PhaseTextBox.value
ActiveSheet.Cells(row, 20) = UserForm1.cdTextBox.value
End Sub
私を助けてくれてありがとう!
コードを実行すると、どこにエラーが表示されますか? (エラーがなければ、正常に動作した最後の行は何ですか?)なぜハイパーリンクについての行があるのか分からない、エクセルにリストされているファイルはフォルダの場所にハイパーリンクするはずですか?はいの場合は、ファイルダイアログで選択したフォルダの場所ですか? –
ハイパーリンクの部分は、ファイル名を抽出して次の空きセルのセルに出力するチュートリアルのものでした。私はハイパーリンクを使用していません。 –