Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  60 61 62 63 64 65 66 67 68   další » ... 84

co takto?
Sub HIDE()
Dim Vstup As String
For Each List In Sheets

If List.Name = "List2" Or List.Name = "List3" Or Left(List.Name, 1) = "Z" Then

'--- J3=1 a M3=1
If Worksheets("List1").Range("J3") = 1 And Worksheets("List1").Range("m3") = 1 Then
List.Visible = False
End If

'--- J3=2 a M3=2
If Worksheets("List1").Range("J3") = 2 And Worksheets("List1").Range("m3") = 2 Then
List.Visible = True
End If

End If

Next List

'--- J3=3 a M3=3
If Worksheets("List1").Range("J3") = 3 And Worksheets("List1").Range("m3") = 3 Then
Vstup = InputBox("Zadej jméno listu nebo listů, které chceš zviditelnit" & vbCrLf & vbCrLf & _
"V případě více listů mezi názvy vlož středník (;) bez mezery, např. Zlist;List2", "Zadej název listů")
Dim Pole() As String
Pole = Split(Vstup, ";")

For i = LBound(Pole) To UBound(Pole)
Worksheets(Pole(i)).Visible = True
Next
End If

End Sub

Na vyhodnocovani stisku talcitek v msgboxu je lepsipouzivat Select Case (je to rychlejsi i prehlednejsi), pouziva se takto:
Vysledek = MsgBox("prompt", vbYesNo, "title")
Select Case Vysledek
Case vbYes
'kod pri stisku ANO
Case vbNo
'tady nema byt zadny kod
End Select

co dat do bunky D1 (a do dalsich :)) tento maticovy vzorec (tzn. ulozit stisknem SHIFT+CTRL+ENTER)
=KDYŽ((A:A=A1)*(C:C<0);"ano";"ne")

v Editoru VB - Tools/VBAProject Properties - zalozka Protection

upravil jsem puvodni kod, aby to zacinalo na A5
logika je takova, ze kod cells(5,1) je bunka, ktera je na 5.radku a 1.sloupci = A5

mozna neco takoveho? Sub makro()
Dim i As Integer
i = 5
Do Until Cells(i, 1) = 0
Cells(1, 2) = Cells(i, 1)
Call 'nazev vaseho makra'
i = i + 1
Loop
End Sub

taky zdravim,
vas popis jsem nejak ne uplne pochopil.
napr.:
- kdy a jak (na tlacitko?) se ma spustit 'makro'?
- co znamena spousteni makra podle hodnot v bunkach (jaka je podminka?)
- opakovani cyklu znamena, ze se v dalsim kole do bunky B1 zada hodnota z bunky A3??

Chtelo by to popsat detailne

treba takto: If UserForm1.TextBox1.Value = "" Then
'MsgBox "je to prazdne, nic se nedeje"
Else
Range("a1") = TextBox1
End If

ano - muze tam byt vickrat, ale nevidim v tom vetsi problem - nepredpokladam, ze by tam bylo nejak moc otevreni toho sesitu, kdyz to bude cca do x tisic, tak se nic hroznyho nedeje - samozrejme muzes to napsat tak, ze se vyhleda username a nahradi, ale priznam se, ze se mi to nechtelo moc resit.
Kazdopadne to neber tak, ze moje verze je nejak sofistikovana - muzes si z ni vzit inspiraci nebo nemusis - je to na tobe, vzdyt jde o tvuj soubor :)

ja tent vuj nevidel, jen jsem vlozil to, co jsem stvoril ja - a priznam se, ze se mi nechce tvu kod studovat, takze si vyber a cokoliv bude fungovat, je dobry :)

Mozna takto, co myslis?

Tak to je absolutne zasadni informace, a chtelo by to cely predelat nebo uzpusobit - to bych ale musel chapat cely proces, ktery se tam deje...

tak tohle uz je na vzorce opravdu slozite (a tudiz to neni na reseni zdarma) - makrem by to slo jednoduse, ale je otazka, jestli by to pro vas melo smysl - spise, jestli existuje takovy zpusob spousteni makra, ktery by zajistil spravne informace vzdy, kdyz je budete potrebovat - to je potreba si rozmyslet!

Co takto?Sub najit_obsahuje()
For i = 1 To List1.Cells(1000000, 1).End(xlUp).Row
On Error Resume Next
List1.Select: Rows(Cells(i, 1).Find("ahoj").Row).Select
If Err.Number = 91 Then GoTo chyba
Selection.Copy
List2.Select: Cells(Application.WorksheetFunction.CountA(List2.Range("a:a")) + 1, 1).Select: Selection.PasteSpecial Paste:=xlValue
chyba:
Next
End Sub

Napadlo me jen to, ze by slo zapisovat kazdeho uziavatele, ktery sesit otevre a pak prohledat seznam uzivatelu, jestli uz sesit otevrel.
Tento seznam jsem v kodu umistil na list 3 - ktery by samozrejme mohl byt skryty, ci jakkoliv jinak 'uklizeny'. Odkaz na toto makro by melo byt v procedure pri spusteni v ThisWorkbook
Sub RunOnce()
If List3.Cells(1, 1) <> Date Then
List3.Range("a2:a65000").ClearContents
List3.Cells(1, 1) = Date
End If
For i = 2 To List3.Cells(50000, 1).End(xlUp).Row
If List3.Cells(i, 1) = Application.UserName Then
Exit Sub
End If
Next
List3.Cells(List3.Cells(50000, 1).End(xlUp).Row + 1, 1) = Application.UserName
Call NazevMakra
End Sub


Strana:  1 ... « předchozí  60 61 62 63 64 65 66 67 68   další » ... 84

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

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.

On-line nástroje