< návrat zpět

MS Excel


Téma: vlastní pás karet rss

Zaslal/a 31.5.2024 13:09

Zdravím, měl bych dotaz na vlastní pás karet.
Nevíte někdo jak dostat do pásu karet hodnotu z buňky, nebo buňku vynechat a rovnou data makrem vložit do pásu karet?
Nevím jestli jsem to popsal srozumitelně. Přikládám vzorovou přílohu. Po kliknutí na tlačítko aktualizace. Překopíruje makro hodnotu A2 do D2, do D3 vloží datu a čas použití makra.
Pokouším se použít TextBox, ale nemůžu nic na netu najít. Jde to vůbec? Díky za odpověď. Pomocí makra aktualizuji data v sešitě o více listech a hodilo by se vědět, kdy jsem naposledy aktualizoval. Díky předem

Příloha: zip56578_test.zip (14kB, staženo 6x)
Zaslat odpověď >

#056579
elninoslov
Skúste pomocou Custom Properties.citovat
#056582
avatar
Custom Properties neznám.
Soubor funguje přesně.
Díky
Jen se mě to nedaří aplikovat do mého souboru. 7 Nemůžu přijít na to, kde je problém.citovat
#056583
elninoslov
A čo Vám presne nefunguje?
Toto do modulu makra:
Option Explicit
Private myRibbon As IRibbonUI

'Callback for customUI.onLoad
Sub Initialize(ribbon As IRibbonUI)
Set myRibbon = ribbon
myRibbon.ActivateTab "TabFormular"
End Sub

'Callback for btnAktual onAction
Sub clkAktual(control As IRibbonControl)
List1.CustomProperties(1).Value = List1.Range("A2").Value2
List1.CustomProperties(2).Value = Now
myRibbon.Invalidate
End Sub

'Callback for ebCislo getText
Sub GetCislo(control As IRibbonControl, ByRef returnedVal)
returnedVal = List1.CustomProperties(1).Value
End Sub

'Callback for ebDatum getText
Sub GetDatum(control As IRibbonControl, ByRef returnedVal)
returnedVal = List1.CustomProperties(2).Value
End Sub

a toto do CustomUI:
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" onLoad="Initialize">
<ribbon startFromScratch="false">
<tabs>
<tab id="TabFormular" label="Muj pás" keytip="f" >
<group id="grpAktual" label="Aktualizace">
<button id="btnAktual" label="Aktualizace" size="large" onAction="clkAktual" imageMso="ViewPrintLayoutView" />
</group>
<group id="grpPoslAktual" label="Poslední aktualizace">
<editBox id="ebCislo" label="Císlo:" onChange="ocCislo" getText="GetCislo"/>
<editBox id="ebDatum" label="Datum aktualizace" sizeString="dd.mm.yyyyhh:mm:ss" onChange="ocDatum" getText="GetDatum"/>
</group>
</tab>
</tabs>
</ribbon>
</customUI>

A stlačiť Validate a Save.
Otvoriť Excel.citovat
#056584
avatar
Něco dělám blbě. Pokouším se přijít na to co.
Když si v tom vašem souboru udělám kopii listu, vytvoří se list2. Pak jsem v makru změnil list1 na list2 a při spouštění souboru to vyhazuje chybu: Subscript out of range (Error 9)citovat
#056585
avatar
List1 je .codename a ne .name. V tab vlastností listu je to hned nahoře "(Name)"citovat
#056587
avatar

Anonym napsal/a:

List1 je .codename a ne .name. V tab vlastností listu je to hned nahoře "(Name)"


To chápu, tedy myslím. Ale stejně mě to nejde.citovat
#056588
elninoslov
Tak Vy tam asi nemáte tie CustomProperties pridané:
Sub CheckCustomProp()
List1.CustomProperties.Add "CustPropCislo", "123"
List1.CustomProperties.Add "CustPropDatum", DateSerial(2024, 5, 31) + TimeValue("14:45:00")
End Sub


Overil som to, je to tak. Keby ste napísal hneď, že Vám to dá chybu na riadku
List1.CustomProperties(1).Value = List1.Range("A2").Value2
vedeli by sme hneď. Ale to je taký dnešný nešvar, že sa napíše iba, nejde mi to, hodilo to chybu, je s tým problém, nefunguje, apod. Treba presne!
Skúste to. Malo by to fachať.

Inak, Vy chcete používať viac listov??? To bude asi problém. Bude sa to musieť prekopať, aby makro vedelo, ktorý list je aktívny, a ktoré číslo CustomProperties mu prináleží. To by potom bolo jednoduchšie ukladať hodnoty do zoznamu v liste xlSheetVeryHidden.citovat
#056589
avatar
Už to funguje. Díky

Budu požívat více listů, ale makro bude při aktualizaci používat vždy List1.citovat

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