Dobrý den, používám pro export samostatného listu níže uvedený kód. Ten mi sice list správně exportuje, ale pravděpodobně všechny buňky s obecným formátem. Já ale používám různé formáty např: datum a potřebuju ho vyexportovat se stejným formátem buňky. Takto se mi ten formát změní na výchozí obecný.
Sub export()
ThisWorkbook.Worksheets("List2").Copy
With ActiveWorkbook
With .Worksheets(1).UsedRange
.Value = .Value
R = .Parent.Cells(Rows.Count, "A").End(xlUp).Row
.Resize(.Rows.Count - R + 1).Offset(R, 0).EntireRow.Delete Shift:=xlUp
End With
Application.DisplayAlerts = False
.SaveAs "C:\Users\DELL i7\Desktop\final.xlsx", xlOpenXMLWorkbook
Application.DisplayAlerts = True
.Close False
End With
End Sub
S makrem mi to funguje, pokud ty prázdné hodnoty nahradím nějakým textem (který se nikde nevyskytuje), pak ho znovu nahradím prázdnou hodnotou. Takže dostačující.
Tak ještě jednou. Funguje skvěle, pokud vše udělám ručně. Pokud ale zaznamenám takto makro, zmaže mi pak vše.
Děkuji, funguje skvěle.
Vím, co to způsobuje, ale nevím proč. Mám dva listy v prvním mám třeba v A1-A10 hodnoty, pak třeba 5 prázdných buněk a v A16 zase data. Do druhého listu používám fc CONCATENATE(List1!A1) v A1. Buňky následně roztáhnu až do a16 a vznikne mi tedy identická kopie, ale prostě není, protože ty prázdné buňky jsou sice opticky prázdné, ale když dám tedy hledat prázdné buňky, říká, že žádné nenašel.
Netuším, kde dělám chybu, ale vykopíruju si data z jednoho listu, kde jsou vzorce do druhého a vložím jako hodnoty, takže předpokládám, že kde nic v buňce není, je tedy prázdná. Když ale v tomto konkrétním případě viz: příloha orámuju (vyberu) A1 až J10 a zvolím "najít a vybrat" dále na "Přejít na jinak.." dále zatrhnu "Prázdné buňky, tak mi to označí jen 2 a přitom je jich tam mnohem více. Poradíte prosím?
To je přesně ono, moc díky.
Můj avatar mluví za vše:-) Možná bych Vás ještě poprosil to poupravit, ne když je vyšší než 1, ale pokud obsahuje jakoukoliv hodnotu, pokud je A1 prázdná, potřebuju aby i ten datum zůstal prázdný. Děkuji za ochotu.
No, myslel jsem s pomlčkou, ale o už jsem si předělal, jen jsem nevěděl, jak se ten datum vkládá. Moc děkuji.
Moc opět děkuju Elnino!
Poprosil bych o radu. když například buňka A1 obsahuje větší číslo, než 1, aby se v B2 vypsal aktuální datum ve formátu XXXX-XX-XX a v Buňce C3 + 7dnů. Děkuji moc.
Elnino, prosím Vás, co zde musím změnit, aby mi to neřadilo podle sloupce TV, ale TF, špatně jsem Vám to napsal.
Sub reset_sesitu()
Dim Posledni As Long
Application.ScreenUpdating = False
With wsProdukty
If Not .AutoFilterMode Then .Range("A12:TV12").AutoFilter
On Error Resume Next
.ShowAllData
On Error GoTo 0
With .Sort
.SortFields.Clear
.SortFields.Add2 Key:=wsProdukty.Range("TV12:TV12"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange wsProdukty.Range("A12:TV12")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
.Range("A:TV").EntireColumn.Hidden = False
Posledni = .Cells(Rows.Count, 1).End(xlUp).Row
.Application.ActiveWindow.ScrollColumn = 9
.Application.ActiveWindow.ScrollRow = WorksheetFunction.Max(Posledni - 5, 9)
.Cells(Posledni, 1).Select
With .Buttons(Split(NAZVY, ",")).Font
.Color = vbBlack
.Bold = False
End With
End With
Application.ScreenUpdating = True
End Sub
Já myslím, že to je řádek
.SortFields.Add2 Key:=wsProdukty.Range("TV12:TV12"), SortOn:=xlSortOnValues, ale proč je tam dvakrát TV12?
Moc děkuji!
Pardom Elnino, zapomněl jsem
Elninoslave, šlo by to toho resetu ještě vložit, aby zobrazil všechny sloupce? Stává se mi, že něco skryju kvůli přehlednosti a zapomenu to zobrazit.
Sub reset_sesitu()
Dim Posledni As Long
Application.ScreenUpdating = False
With wsProdukty
If Not .AutoFilterMode Then .Range("A12:TV12").AutoFilter
On Error Resume Next
.ShowAllData
On Error GoTo 0
With .Sort
.SortFields.Clear
.SortFields.Add2 Key:=wsProdukty.Range("TV12:TV12"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
.SetRange wsProdukty.Range("A12:TV12")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Posledni = .Cells(Rows.Count, 1).End(xlUp).Row
.Application.ActiveWindow.ScrollColumn = 9
.Application.ActiveWindow.ScrollRow = WorksheetFunction.Max(Posledni - 5, 9)
.Cells(Posledni, 1).Select
With .Buttons(Split(NAZVY, ",")).Font
.Color = vbBlack
.Bold = False
End With
End With
Application.ScreenUpdating = True
End Sub
Děkuji za ochotu!
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.