Příspěvky uživatele


< návrat zpět

Strana:  « předchozí  1 2 3 4 5 6 7 8 9   další » ... 16

Samostatný list nelze přiložit jako přílohu emailu, stejně tak jako list neuložíte na úložiště.
Vložit lze soubor (sešit) obsahující pouze uvedený list.
.Attachments.Add (soubor)

Dalo.
Rows(i) nahradit uvedeným Range

...Kdykoliv vložím do složky soubor B, tak otevřít excel s makrem...
Na to budete mít nějaký cron, který to zabezpečí?

...porovná oba soubory A a B a ze souboru B odstraní všechny sloupce, které neobsahuje soubor A....
Podle jakého klíče se mají sloupce odstranit? Podle nějakého konkrétního řádku, podle obsahu celého sloupce?

...moc bych poprosil o radu, jak ve dvou excelových souborech (oba mají pouze jeden sešit) odstranit nadbytečné sloupce...
1. Otevřít oba soubory;
2. v cyklu, podle počtu sloupců v souboru B, provést - zjistit (načíst) klíč prvního sloupce v souboru B a vyhledat stejný klíč v souboru A (pokud nebude klíč shodný sloupec ze souboru B smazat, jinak pokračovat načtením klíče následujícího sloupce);
3. uložit soubor B.

Jedno z možných řešení, ale nevýhoda při velkém počtu řádků bude pomalé.
Předpoklad, že sloupec A je seřazen.Sub ObarviRadek()

Dim barva As Long, barva1 As Long, barva2 As Long, i As Long
Dim hodnota As String

barva1 = vbYellow
barva2 = vbGreen

hodnota = Cells(1, 1)
barva = barva1
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
If Cells(i, 1) <> hodnota Then
If barva = barva1 Then
barva = barva2
Else
barva = barva1
End If
End If
Rows(i).Interior.Color = barva
hodnota = Cells(i, 1)
Next i

End Sub

Přesunout Application.DisplayAlerts = False v proceduře Nacti_osobni_udaje_Click za dialog pro otevření souboru.

Tak já asi moc nepomohu, protože se mi při sebelepší snaze tento výtvor nedaří na MSO 2007 ani otevřít.

Kdyby byl soubor tak by se to možná dalo i posoudit lépe, kde je chyba.
Je to na tomto fóru docela standard, přikládat vzorové soubory.

pavelo napsal/a:

Hmm..., to je hezké, ale co s tím, jak to mám opravit, aby to bylo funkční?

Že by to šlo opravit zadáním správného názvu spouštěného makra?
Application.OnTime Now + TimeValue("00:00:04"), "HideLabel1"

Makro List1.HideLabel1 neexistuje
existuje pouze HideLabel1

Application.OnTime Now + TimeValue("00:00:04"), "moje_makro"
OnTime spustí definované makro, evidentně to makro v modulu není, když to hlásí.
Dopsat si moje_makro, které zabezpečí skrytí labelu

Standardní je vložit přílohu.

Rychlejší a elegantnější je řešení od Stalker
Private Function ListExistuje(ByVal strJmeno As String) As Boolean
On Error Resume Next
ListExistuje = Not Worksheets(strJmeno) Is Nothing
On Error GoTo 0
End Function

Sub JeList()
If ListExistuje("Test") Then
MsgBox "List existuje."
Else
MsgBox "List neexistuje."
End If
End Sub

Pak se inspirovat https://wall.cz/index.php?m=topic&id=56008

Dim sh As Worksheet
Dim jmenoListu As String

For Each sh In ActiveWorkbook.Sheets
If sh.Name = jmenoListu Then
MsgBox "List již existuje."
End If
Next sh

Pro zjištění názvu měsíce z pořadového čísla lze použít např.:jmenoMesice = Format(DateSerial(2023, mesic, 1), "mmmm")

Jak bude zajištěno pořadí listů v případě, že je takových stejných názvů více - březen, březen(2), březen(1), březen(3)?
Je nutné projít všechny listy sešitu a zjistit kolik takových listů je již vytvořeno a doplnit správnou pořadovou číslovku, která bude navazovat.

Je nutné a smysluplné mít v jednom sešitu takto pojmenované listy?
Za mě to značně komplikuje přehled, který měsíc platí a co znamená. Není lepší vygenerovat kalendář pro celý rok a nějaké změny tohoto typu uživateli neumožnit?

Nebo jaký smysl má toto přejmenování? Co když bude těch listů třeba 20 v jeden měsíc?

Dá se potlačit správnou deklaraci typu proměnné.


Strana:  « předchozí  1 2 3 4 5 6 7 8 9   další » ... 16

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse