Vo VBA je skrytý list "Pomoc", ktorý má nastavenú vlastnosť Visible na xlSheetVeryHidden, preto ten list nevidíte. Zmente si to na xlSheetVisible.
Keď vo VBA kliknete pravým na Forms - UserForm1 - View Code, nájdete tam tento kód:
Private Sub CommandButton1_Click()
Unload Me
End Sub
Private Sub TextBox1_Change()
Dim Vyska As Single
With wsPomoc.Cells(15, 6)
.Value2 = TextBox1.Text
.EntireRow.AutoFit
Vyska = .RowHeight
End With
With wsData.Cells(15, 6)
.Value2 = TextBox1.Text
.RowHeight = Vyska
End With
End Sub
Private Sub TextBox2_Change()
Dim Vyska As Single
With wsPomoc.Cells(20, 3)
.Value2 = TextBox2.Text
.EntireRow.AutoFit
Vyska = .RowHeight
End With
With wsData.Cells(20, 3)
.Value2 = TextBox2.Text
.RowHeight = Vyska
End With
End Sub
Funkčnosť tu už bola popísaná niekoľkokrát. Čo k tomu viac napísať? V TextBoxe stlačíte klávesu, napíše sa písmeno, vyvolá to metódu Change daného TextBoxu. V nej sa aktuálna hodnota Textboxu prenesie do pomocnej bunky v pomocnom liste (táto bunka má rovnakú šírku ako celá zlúčená oblasť o ktorú ide, ale len jednoriadkovú výšku), formát bunky pomocnej a zlúčenej je rovnaký, nastavené zalomenie. V pomocnej bunke sa teda potom vyvolá AutoFit
...
.EntireRow.AutoFit
...
teda sa upraví na požadovanú výšku. Táto výška sa potom prečíta a podľa nej sa upraví aj výška zlúčenej oblasti.
Každopádne je to dosť špecifické súbor od súboru, použitie od použitia, druh zlúčenia od druhu zlúčenia ...
Príloha?
Stále hovoríme o Autofit-e jednoriadkovej zlúčenej oblasti. Nie o viacriadkovej. Tam by to bolo zložitejšie.
Ak myslíte "formulárom" list a nie UserForm, tak to bude ešte zložitejšie, lebo treba ošetrovať veľa stavov (zmazanie viac buniek naraz, nesúvislá oblasť a pod...), a to sa mi moc nechce ...
citovat