Kezdőlap › Fórumok › Excel programozás › [Resolved] VBA képlet beillesztése › Hozzászólás: [Resolved] VBA képlet beillesztése
2021-02-11-16:05
#8252
A teljes kód ez lenne:
Private Sub btnRogzites_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = Worksheets("Készlet")
Első üres sor megkeresése
iRow = ws.Cells.Find(What:="*", SearchOrder:=xlRows, _
SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1
Ha az eszköz neve mező nincs kitöltve nem enged tovább
If Trim(Me.eszkoz_neve.Value) = "" Then
Me.eszkoz_neve.SetFocus
MsgBox "Minden mező kitöltése kötelező!"
Exit Sub
End If
táblázat kitöltése
With ws
.Cells(iRow, 3).Value = Me.eszköz_neve.Value
.Cells(iRow, 4).Value = Me.tbox_kod.Value
.Cells(iRow, 6).Value = "41"
.Cells(iRow, 7).Value = Me.tboxKezdokeszlet.Value
.Cells(iRow, 9).FormulaArray = "=iferror(vlookup(&iRow,3&;Segédtáblák!$I$4:$J$174;2;0);"0")"
.Cells(iRow, 10).Value = Me.tboxMennyisegegysege.Value
.Cells(iRow, 12).Value = Me.tboxRendelesi_mennyiseg.Value
.Cells(iRow, 13).Value = Me.tboxMinimum_keszlet.Value
.Cells(iRow, 14).Value = Me.tboxMegjegyzes.Value
End With
End Sub
a cellában ez szerepel eredetileg, amit minden egyes alkalommal a következő üres sorba kellene beírnia, tehát a c41+i. sorba
=HAHIBA(FKERES(C41;Segédtáblák!$I$4:$J$174;2;0);"0")
A C41 mezőben lévő értéket megkeresi a segédtáblában és az ahhoz tartozó 2. cellában lévő értéket adja vissza. ha az üres akkor „0” értéket adja vissza.
ugyan is a kapott értéket később hozzáadjuk egy másikhoz.
iRaw, 3 ezt helyettesíti (viszont ezt véletlenül 9-re írtam).