< návrat zpět

MS Excel


Téma: combobox - zápis čísla rss

Zaslal/a 25.12.2011 21:59

fire150Zdravím. Rád by som poprosil o radu. Mám vytvorený jednoduchý formulár cez VBA s textbox a combobox cez ktoré sa zadávajú položky - každá do jednej bunky.Tlačidlom ich vložím a po ďalšom výbere vloženie na nový riadok. Problém je v tom že pri zadaní čísla do textboxu alebo výberu čísla s comboboxu sa číslo uloží ako text, ale ja potrebujem pre dalšie výpočty použiť vybrané/uložené číslo do výpočtov
Private Sub CommandButton1_Click()
Dim PoslBunka As Range
' nalezeni posledniho neprazdneho radku na listu:
' nastaveni na posledni radek listu ve sloupci
Set PoslBunka = Worksheets("7").Range("A:A").Cells(Range("A:A").Cells.Count)
' presun na posledni neprazny radek listu
If IsEmpty(PoslBunka) Then Set PoslBunka = PoslBunka.End(xlUp)
'nastaveni na prazdnou bunku
Set PoslBunka = PoslBunka.Offset(1, 0)
' vlozeni dat z textovych poli formulare do listu
PoslBunka.Value = UserForm1.TextBox1
PoslBunka.Value = UserForm1.vodic1
PoslBunka.Value = UserForm1.km1
PoslBunka.Value = UserForm1.pret1
PoslBunka.Value = UserForm1.cer1
PoslBunka.Value = UserForm1.tankcs1
PoslBunka.Value = UserForm1.tanksklad1
PoslBunka.Value = UserForm1.rano1
PoslBunka.Value = UserForm1.druh1
PoslBunka.Value = UserForm1.TextBox2
PoslBunka.Offset(0, 0).Value = UserForm1.TextBox1
PoslBunka.Offset(0, 1).Value = UserForm1.vodic1
PoslBunka.Offset(0, 2).Value = UserForm1.km1
PoslBunka.Offset(0, 3).Value = UserForm1.pret1
PoslBunka.Offset(0, 4).Value = UserForm1.cer1
PoslBunka.Offset(0, 5).Value = UserForm1.tankcs1
PoslBunka.Offset(0, 6).Value = UserForm1.tanksklad1
PoslBunka.Offset(0, 7).Value = UserForm1.rano1
PoslBunka.Offset(0, 8).Value = UserForm1.druh1
PoslBunka.Offset(0, 9).Value = UserForm1.TextBox2
'vyprazdnit textova pole
UserForm1.TextBox1.Value = vbNullString
UserForm1.vodic1.Value = vbNullString
UserForm1.km1.Value = vbNullString
UserForm1.pret1.Value = vbNullString
UserForm1.cer1.Value = vbNullString
UserForm1.tankcs1.Value = vbNullString
UserForm1.tanksklad1.Value = vbNullString
UserForm1.rano1.Value = vbNullString
UserForm1.druh1.Value = vbNullString
UserForm1.TextBox2.Value = vbNullString
End Sub

Dík za rady

stop Uzamčeno - nelze přidávat nové příspěvky.

#006786
avatar
Tento kod se přeloží textu do čísla.

Sub ConvertToNumbers()
Cells.SpecialCells(xlCellTypeLastCell) _
.Offset(1, 1).Copy
Selection.PasteSpecial Paste:=xlPasteValues, _
Operation:=xlPasteSpecialOperationAdd
With Selection
.VerticalAlignment = xlTop
.WrapText = False
End With
Selection.EntireColumn.AutoFit
End Sub

Pokuste SpecialCells(xlCellTypeLastCell).Offset(1, 1) nahradit PoslBunka.Offset().citovat
#006787
fire150
bohužial ani pri rôznych kombináciách sa čísla neukladajú ako čísla ale stále ako text 6citovat
#006789
avatar
pozadovana_hodnota = CInt(UserForm1.TextBox2.Text)

CInt - integer , CDbl - double , ostatne pozri helpcitovat
#006790
fire150
Vďaka misocko zdá sa že to je funkčné 9citovat

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