Minulla on työkirja jossa on kolme taulua ”Syöttö, Data ja AT jossa on asetuksia”. Syöttö taulua käytetään tiedon syöttämiseen sekä kaavakkeen tulostukseen tästä tiedot kopioidaan ”napista” Data taulun riveihin. Miten löydän tyhjän rivin Data taulusta ja niin että se tutkisi joko on sillä erällä tiedot. Eri vuosilla saa olla sama erä numero.
Tyhjän rivin etsiminen VBA
Nimetön
41316
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 4
Vanhimmat
sarakkeen A ensimmäisen tyhjän solun valitset näin
Vika()
Dim Vika As Integer
Vika = Range("A1").End(xlDown).Row
Range("A" & Vika 1).Select
End Sub
Tällä sain ensinmäisen tyhjän rivin mutta miten tutkin onko tieto jo olemassa, elikä mulla on vuosi B sarakkeessa ja erä E sarakkeessa, syöttö taulussa vastaavasti vuosi on M9 ja erä O6.
moduuliin
Sub Kopioi()
Dim Vika As Integer
Dim Haettava As Range
Dim Haettava2 As Range
Dim Hakualue As Range
Dim Löydetty As Range
Dim EkaSolu As String
Sheets("Syöttö").Activate
Set Haettava = Range("M9")
Set Haettava2 = Range("O6")
Sheets("Data").Activate
Vika = Range("B65536").End(xlUp).Row
Set Hakualue = Range("B1:B" & Vika)
Range("B1").Select
Set Löydetty = Hakualue.Find(What:=Haettava, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False)
If Not Löydetty Is Nothing Then
EkaSolu = Löydetty.Address
If Löydetty.Offset(0, 3) = Haettava2 Then
MsgBox "Tiedot on jo olemassa", vbInformation
Exit Sub
Else
Do
Set Löydetty = Hakualue.FindNext(Löydetty)
If Löydetty.Offset(0, 3) = Haettava2 Then
MsgBox "Tiedot on jo olemassa", vbInformation
Exit Sub
End If
Loop While Not Löydetty Is Nothing And Löydetty.Address EkaSolu
Range("B" & Vika 1) = Haettava
Range("B" & Vika 1).Offset(0, 3) = Haettava2
End If
End If
End Sub
Toimii! ja kiitos. Yritän itse selvitä nyt eteenpäin ja kyselen sitten lisää jos vielä apua tarvitsen.