Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Výstup UserForm v excelu

Zdravím.
Jelikož nemám moc zkušenosti s VBA ani programováním, obracím se na vás s prosbou.
Potřeboval bych poradit s výstupem UserForm tabulky do jednoho jediného políčka.
UserForm se mi otevře po kliknutí na tlačítko, kde mám:
ComboBox, ve kterém vyhledám název a ten bych chtěl po zmáčknutí CommandButtonu hodit do políčka H1.

Umí mi někdo prosím poradit ?
Děkuji

Předmět Autor Datum
Na takovéto otázky (jak udělat určitou věc, typu obarvit text načerveno nebo napsat něco někam) posk…
ml1 11.04.2019 14:06
ml1
Pokud žádáš o radu ohledně VBA, vždy je lepší přiložit vzorový soubor. Nepíšeš v jaké fázi se nacház…
Siki83 11.04.2019 15:15
Siki83
Najjednoduchšie je to do vlastnosti ComboBoxu ControlSource zadať bunku do ktorej má zapísať hodnotu… poslední
robert13 11.04.2019 15:21
robert13

Na takovéto otázky (jak udělat určitou věc, typu obarvit text načerveno nebo napsat něco někam) poskytuje výbornou odpověď záznam maker.

Výsledek pak snadno upravíte třeba do tvaru:

Range("H1").Value = to, co tam má být třeba Combobox1.value

A jinak, kdyby to mělo být na konkrétním listě tak Sheets("listxxx").Range("X1").Value

Radit vám prokousávat se nápovědou k objektu range je asi zbytečné, ta nápověda je koncipovaná spíš tak, že člověk musí vědět, co hledá, aby to našel.

Pokud žádáš o radu ohledně VBA, vždy je lepší přiložit vzorový soubor. Nepíšeš v jaké fázi se nacházíš, pokud tedy budu vycházet z Tvého textu, tak Ti stačí kód pro CommandButton.

Musíš definovat jméno (kódové) listu, adresu buňky = jméno userformu (nebo přímo jen Me.) a jméno ovládacího prvku.
Např. pro List1 (v kódovém označení) a buňku C3

Private Sub CommandButton1_Click()
List1.Range("C3").Value = Me.ComboBox1.Value
Unload Me
End Sub

Unload Me skryje userform a vymaže hodnoty z ovládacích prvků.

Najjednoduchšie je to do vlastnosti ComboBoxu ControlSource zadať bunku do ktorej má zapísať hodnotu vybranú ComboBoxom. (Napr "Hárok1!C5")
Prepis nastane až po vybratí hodnoty ComboBoxom a stlačením Enter.

Iný a lepší spôsob je priradiť udalosti ComboBox_Change príkaz na zápis.
Na vykonanie zápisu potom nepotrebuješ CommandButton, ani stláčať po výbere Enter, ani zadávať ControlSource. Zápis sa vykoná automaticky výberom položky ComboBoxu

Veľmi rýchla ukážka je v prílohe

Zpět do poradny Odpovědět na původní otázku Nahoru