2012-08-22 13:33:14
[#1] web_snifer
Function GetSciezka() As String
With Application.FileDialog(msoFileDialogFilePicker)
'tytul okienka dialogowego
.Title = "Wybierz folder z plikami do importu"
'mozna wybrac tylko jeden katalog
.AllowMultiSelect = False
If .Show = -1 Then
GetSciezka = .SelectedItems(1)
Else
'Show zwraca -1 dla wybierz oraz 0 w pozostałych przypadkach
GetSciezka = 0
End If
End With
End Function
Sub zapisDanych(wBook As Workbook, tenBook As Workbook)
Dim tenSheet As Worksheet
Set tenSheet = tenBook.Sheets("Arkusz1")
tenSheet.Cells.Clear
Dim wSheet As Worksheet
Set wSheet = wBook.Sheets("Arkusz1")
wSheet.Cells.Copy tenBook.Sheets("Arkusz1").Range("a1")
End Sub
Sub GlownyProgram()
Dim fso As FileSystemObject
Set fso = New FileSystemObject
Dim sWybranyKatalog As String
sWybranyKatalog = GetSciezka()
If sWybranyKatalog = "0" Then
MsgBox "Nie Wybrales Sciezki do importu"
Else
'obiekt folder zapewnia dostęp do właściwości folderu
Dim Katalog As File
Set Katalog = fso.GetFile(sWybranyKatalog)
'obiekt plik obsługuje zawartość pliku
Dim ten_plik As Workbook: Set ten_plik = ActiveWorkbook
Dim myBook As Workbook
Set myBook = Workbooks.Open(sWybranyKatalog)
Call zapisDanych(myBook, ten_plik)
myBook.Close False
End If
End Sub
Ten kod dziala jak chce , tylko jeszcze jedna prosba jak przerobic program zeby kopiowal arkusza o takiej samej nazwie jak wybrany plik do arkusza 1 pliku macierzystego?
With Application.FileDialog(msoFileDialogFilePicker)
'tytul okienka dialogowego
.Title = "Wybierz folder z plikami do importu"
'mozna wybrac tylko jeden katalog
.AllowMultiSelect = False
If .Show = -1 Then
GetSciezka = .SelectedItems(1)
Else
'Show zwraca -1 dla wybierz oraz 0 w pozostałych przypadkach
GetSciezka = 0
End If
End With
End Function
Sub zapisDanych(wBook As Workbook, tenBook As Workbook)
Dim tenSheet As Worksheet
Set tenSheet = tenBook.Sheets("Arkusz1")
tenSheet.Cells.Clear
Dim wSheet As Worksheet
Set wSheet = wBook.Sheets("Arkusz1")
wSheet.Cells.Copy tenBook.Sheets("Arkusz1").Range("a1")
End Sub
Sub GlownyProgram()
Dim fso As FileSystemObject
Set fso = New FileSystemObject
Dim sWybranyKatalog As String
sWybranyKatalog = GetSciezka()
If sWybranyKatalog = "0" Then
MsgBox "Nie Wybrales Sciezki do importu"
Else
'obiekt folder zapewnia dostęp do właściwości folderu
Dim Katalog As File
Set Katalog = fso.GetFile(sWybranyKatalog)
'obiekt plik obsługuje zawartość pliku
Dim ten_plik As Workbook: Set ten_plik = ActiveWorkbook
Dim myBook As Workbook
Set myBook = Workbooks.Open(sWybranyKatalog)
Call zapisDanych(myBook, ten_plik)
myBook.Close False
End If
End Sub
Ten kod dziala jak chce , tylko jeszcze jedna prosba jak przerobic program zeby kopiowal arkusza o takiej samej nazwie jak wybrany plik do arkusza 1 pliku macierzystego?
