Přidat do zápisu podmínku
Napsal: 21 kvě 2022 14:52
Zdravím, potřeboval bych do níže uvedeného zápisu přidat podmínku, pokud bude v Listu "Inventura" v bunce H2 číslo>1, napíše hlášku a nic nenačte. Díky
Sub ImportListu()
Dim Zdroj As Workbook, Cil As Workbook
Dim ZdrojList As Worksheet
'jméno listu který se bude kopírovat
Const JmenoZdrojListu As String = "V seznamu ANO"
Application.ScreenUpdating = False
With Application.FileDialog(msoFileDialogFilePicker)
'nastavení úvodní složky procházení
.InitialFileName = Environ("Userprofile") & "\Desktop\"
.Title = "Vyber soubor k exportu listu """ & JmenoZdrojListu & """"
.AllowMultiSelect = False
.Filters.Clear
.Filters.Add "Excel", "*.xls; *.xlsx", 1
.Show
If .SelectedItems.Count = 0 Then
MsgBox "Nebyl vybrán žádný soubor!", vbExclamation, "!!! Varování !!!"
Exit Sub
Else
'načtení jednoslivých souborů a listu do proměnných
Set Zdroj = GetObject(.SelectedItems(1)) 'otevření zdrojového souboru
On Error Resume Next
Err.Clear
Set ZdrojList = Zdroj.Worksheets(JmenoZdrojListu) ' načtení kopírovaného listu do proměnné
If Err.Number <> 0 Then
MsgBox " Zvolený soubor neobsahuje potřebný list s názvem " & vbNewLine & """" & JmenoZdrojListu & """", vbCritical, "!!! CHYBA !!!"
GoTo konec
End If
On Error GoTo 0
Set Cil = ThisWorkbook
'kopírování listu
ZdrojList.Copy After:=Cil.Worksheets(Cil.Worksheets.Count)
'zavření zdrojového souboru bez uložení
Zdroj.Close SaveChanges:=False
End If
End With
konec:
Application.ScreenUpdating = True
Set ZdrojList = Nothing
Set Zdroj = Nothing
Set Cil = Nothing
End Sub
Sub ImportListu()
Dim Zdroj As Workbook, Cil As Workbook
Dim ZdrojList As Worksheet
'jméno listu který se bude kopírovat
Const JmenoZdrojListu As String = "V seznamu ANO"
Application.ScreenUpdating = False
With Application.FileDialog(msoFileDialogFilePicker)
'nastavení úvodní složky procházení
.InitialFileName = Environ("Userprofile") & "\Desktop\"
.Title = "Vyber soubor k exportu listu """ & JmenoZdrojListu & """"
.AllowMultiSelect = False
.Filters.Clear
.Filters.Add "Excel", "*.xls; *.xlsx", 1
.Show
If .SelectedItems.Count = 0 Then
MsgBox "Nebyl vybrán žádný soubor!", vbExclamation, "!!! Varování !!!"
Exit Sub
Else
'načtení jednoslivých souborů a listu do proměnných
Set Zdroj = GetObject(.SelectedItems(1)) 'otevření zdrojového souboru
On Error Resume Next
Err.Clear
Set ZdrojList = Zdroj.Worksheets(JmenoZdrojListu) ' načtení kopírovaného listu do proměnné
If Err.Number <> 0 Then
MsgBox " Zvolený soubor neobsahuje potřebný list s názvem " & vbNewLine & """" & JmenoZdrojListu & """", vbCritical, "!!! CHYBA !!!"
GoTo konec
End If
On Error GoTo 0
Set Cil = ThisWorkbook
'kopírování listu
ZdrojList.Copy After:=Cil.Worksheets(Cil.Worksheets.Count)
'zavření zdrojového souboru bez uložení
Zdroj.Close SaveChanges:=False
End If
End With
konec:
Application.ScreenUpdating = True
Set ZdrojList = Nothing
Set Zdroj = Nothing
Set Cil = Nothing
End Sub