Přejít na hlavní obsah

VBA Excel UserForm: výchozí pozice pro stahování

V aplikaci Microsoft Excel VBA (Visual Basic for Applications) UserForm se výchozí pozice stahování vztahuje k umístění, kde se UserForm zobrazí na obrazovce při prvním otevření. Toto je velmi užitečná možnost, která umožňuje programátorovi ovládat, kde se UserForm objeví a která oblast obrazovky bude obsazena.

Možnosti startovní pozice ke stažení zahrnují: CenterOwner (uprostřed rodičovského okna), CenterScreen (uprostřed obrazovky), manual (uživatel určuje pozici) nebo WindowsDefaultLocation (používá se systémové nastavení pro okna). Každá z těchto možností má svá specifika a aplikace.

Pokud si vyberete CenterOwner jako spouštěcí pozice pro UserForm se pak objeví vždy uprostřed rodičovského okna, bez ohledu na to, jaké místo na obrazovce Toto okno zabírá. To je zvláště užitečné, když je UserForm spojen s konkrétní buňkou nebo objektem v sešitu aplikace Excel.

Pokud si vyberete CenterScreen, UserForm se vždy objeví uprostřed obrazovky, bez ohledu na to, které okno je aktivní. To je zvláště užitečné, když UserForm není spojen s žádným objektem nebo buňkou v pracovním sešitu.

Pokud je výchozí pozice stahování nastavena na manual, uživatel bude mít možnost samostatně určit, kde se UserForm objeví na obrazovce při jeho otevření. To je užitečné, když je nutné nakonfigurovat umístění UserForm na základě osobních preferencí uživatele.

Pokud si vyberete WindowsDefaultLocation jako spouštěcí pozice se UserForm otevře v protínajícím se bodě " X "(horizontálně) a" Y " (vertikálně) definovaném systémovými nastaveními Windows pro okna. V tomto případě se použijí možnosti konkrétního operačního systému a nastavení uživatele.

Bez ohledu na zvolenou výchozí pozici stahování je důležité zajistit, aby se UserForm zobrazoval na obrazovce uživatelsky přívětivým a srozumitelným způsobem. To pomůže zlepšit uživatelskou zkušenost a zefektivnit práci s VBA UserForm.

Výchozí pozice pro stahování UserForm

Když uživatel spustí UserForm v aplikaci Excel, chce, aby se otevřel na místě, které je pro něj pohodlné. K tomu je možné nastavit výchozí pozici pro načítání formuláře.

VBA má několik vlastností, které lze použít k nastavení výchozí pozice stahování UserForm. Jednou z těchto vlastností je vlastnost StartUpPosition.

Vlastnost StartUpPosition umožňuje vybrat jednu z následujících hodnot:

  • 0 - Manual: tvar se otevírá na místě, které je dané vlastnostmi Left a Top;
  • 1 - CenterOwner: formulář se otevře uprostřed majitele (například hlavní okno aplikace Excel);
  • 2 - CenterScreen: tvar se otevře uprostřed obrazovky.

Chcete-li nastavit výchozí pozici stahování UserForm, musíte postupovat podle následujících kroků:

  1. Otevřete Editor VBA poklepáním na modul související s UserForm;
  2. V okně pro kód vyhledejte postup Initializace;
  3. Přidejte následující kód pro určení výchozí pozice:
Private Sub UserForm_Initialize()Me.StartUpPosition = 2 ' значение "CenterScreen"End Sub

V předloženém kódu je vybrána výchozí pozice "CenterScreen", což znamená, že UserForm se otevře uprostřed obrazovky.

Poznámka: vlastnost StartUpPosition lze také nainstalovat prostřednictvím editoru vlastností UserForm. Chcete-li to provést, musíte vybrat UserForm, kliknout pravým tlačítkem myši a vybrat položku Vlastnosti (nebo stisknout klávesu F4). V okně vlastností můžete vybrat požadovanou hodnotu v rozevíracím seznamu Vlastnosti StartUpPosition.

Zadáním výchozí pozice pro stahování UserForm tak lze uživateli zajistit pohodlí a spokojenost s používáním aplikace Excel.

Použití VBA k nastavení výchozí pozice UserForm

V aplikaci VBA Excel lze kód použít k nastavení výchozí pozice UserForm při jeho spuštění. To vám umožní určit, kde bude tvar na obrazovce umístěn, když se otevře.

Chcete-li nastavit výchozí pozici UserForm, musíte použít vlastnost StartUpPosition. Tato vlastnost bere hodnoty: 0 (CenterOwner), 1 (CenterScreen), 2 (Manual) a 3 (WindowsDefault).

Hodnota 0 (CenterOwner) vytváří tvar umístěný uprostřed vzhledem k nadřazenému oknu (např. Excel). Hodnota 1 (CenterScreen) vytváří tvar umístěný uprostřed obrazovky.

Hodnota 2 (Manual) umožňuje nastavit vlastní pozici pro formulář. K tomu je třeba použít vlastnosti Top a Left, které definují levý horní bod tvaru vzhledem k nadřazenému oknu.

Chcete-li například nastavit tvar na určité místo vzhledem k levému hornímu rohu obrazovky, můžete použít následující kód:

Private Sub UserForm_Initialize()Me.StartUpPosition = 2Me.Left = 100Me.Top = 100End Sub

Hodnota 3 (WindowsDefault) znamená použít výchozí pozici nastavenou pro operační systém.

Použití VBA k nastavení výchozí pozice UserForm umožňuje uspořádat tvar přesně tak, jak je požadováno v konkrétní situaci, což zvyšuje použitelnost programu a zvyšuje jeho funkčnost.