コンピュータの特定のフォルダにあるファイルからワークシートをコピーしようとしています。メインのワークブック(Workbook1)を持って、特定のフォルダ(C:\ Location)からすべてのxlsまたはxlsmファイルの1番目のシートを取るボタンを押したいと思います。現在私が持っているものは以下の通りです。特定のフォルダ内のファイルからワークシートをコピーする
Sub read_a_folder()
Dim MainWB As String
strPath = "C:\Location\"
MainWB = ActiveWorkbook.Name
Set objFso = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFso.GetFolder(strPath)
For Each objFile In objFolder.Files
If objFso.GetExtensionName(objFile.Path) = "xls" Or objFso.GetExtensionName(objFile.Path) = "xlsm" Then
End If
Next
End Sub
私のメインブックにそのままコピーする方法がありません。私はActiveSheet.QueryTables.Addを使用しようとしましたが、コピーされたシートの特別なフォーマットでは判読できません。 Ctrl + Shift + EndとCtrl + Cは手動で行うと機能します。
助けが必要です。
ありがとうございます。
ありがとう@ user3598756 @Daveにも感謝します)。これは私が望むように機能します。非常に有用なコメントもあります:) –
あなたは大歓迎です。しかし、私は@Daveのソリューションを構築しただけです。私はそれを編集したいと思っていませんでしたが、コメントは混乱していました。私は物事を明確にする答えを書き終えました。しかし、Davesは信用できるものです – user3598756
@Daveもう一度私を助けてもらえますか?このプログラムの後半では、このフォルダの読み込みテクニックでどのワークシートが追加されたのかを検出できる必要があります。これらのワークシートを隠しとして追加することは可能ですか?それは私のために役立つだろう。 (私はサイトに新しいので私はここにコメントするか、新しい質問を投稿するか分からなかった)。 –