Sain tämän makron Kundelta ja silloin se tuntui toimivan pienellä muutoksella poistin silloin kohdan "SearchFormat:=False" koska makro herjasi siitä, mutta nyt ilmeni uusi ongelma se ei kopioi kuin erä 2 asti jonka jälkeen ei enää kopiointi toimi.
Tuli nyt vasta eteen kun vuoden vaihde lähestyy ja ajattelin ottaa makron käyttöön.
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
11_03_2006 kysytty
8
518
Vastaukset 8
- epäonnistui
Saakohan tähän mitään neuvoa??
- epäonnistui
Vai onko minussa vika? =)
Olisi mukavaa tietää miksi jouduin poistamaan SearchFormat:=False ja aluksi se tuntui toimivan ainakin erä 2 asti en ole varma koetinko silloin suurempaa erää. - epäonnistui
Asia korjantui "SearchFormat:=False" osalta kun otin uudemman excelin käyttöön Excel 2003, mutta siltin se lopettaa erä 2 kohdalla?
- epäonnistui
Nyt toimii tämä niin kuin pitääkin mutta vikana on vuodenvaihtuminen, elikä se ei huoli uutta vuotta ja erien alkamista alusta.
epäonnistui kirjoitti:
Nyt toimii tämä niin kuin pitääkin mutta vikana on vuodenvaihtuminen, elikä se ei huoli uutta vuotta ja erien alkamista alusta.
sorry, etten ollut huomannut aikaisemmin kyselyäsi...
tässä korjattu versio ;-)
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)
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
Else
Range("B" & Vika 1) = Haettava
Range("B" & Vika 1).Offset(0, 3) = Haettava2
End If
End Sub- kyselijä
kunde kirjoitti:
sorry, etten ollut huomannut aikaisemmin kyselyäsi...
tässä korjattu versio ;-)
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)
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
Else
Range("B" & Vika 1) = Haettava
Range("B" & Vika 1).Offset(0, 3) = Haettava2
End If
End SubMinulla on siinä syöttö taulussa enemmänkin tietoa miten nämä saadaan makroon?
Function tallennatiedot(paikka)
Set Data = Sheets("Data").Range("A2")
Set Data = Data.Offset(paikka, 0)
Sheets("Data").Rows(paikka 2).ClearContents' pistetaan tietoa
With ActiveSheet
Data.Offset(0, 1) = .Range("O6") ' Erä
Data.Offset(0, 2) = .Range("M9") ' Vuosi
Data.Offset(0, 3) = .Range("D9")
Data.Offset(0, 4) = .Range("I9")
Data.Offset(0, 5) = .Range("A13")
Data.Offset(0, 6) = .Range("I13")
Data.Offset(0, 7) = .Range("L16")
Data.Offset(0, 8) = .Range("L17")
Data.Offset(0, 9) = .Range("M16")
jne..... kyselijä kirjoitti:
Minulla on siinä syöttö taulussa enemmänkin tietoa miten nämä saadaan makroon?
Function tallennatiedot(paikka)
Set Data = Sheets("Data").Range("A2")
Set Data = Data.Offset(paikka, 0)
Sheets("Data").Rows(paikka 2).ClearContents' pistetaan tietoa
With ActiveSheet
Data.Offset(0, 1) = .Range("O6") ' Erä
Data.Offset(0, 2) = .Range("M9") ' Vuosi
Data.Offset(0, 3) = .Range("D9")
Data.Offset(0, 4) = .Range("I9")
Data.Offset(0, 5) = .Range("A13")
Data.Offset(0, 6) = .Range("I13")
Data.Offset(0, 7) = .Range("L16")
Data.Offset(0, 8) = .Range("L17")
Data.Offset(0, 9) = .Range("M16")
jne.....Nythän koodi hakee B sarakkeesta vuosilukua ja erää ja jos ei löydy niin tekee uuden rivin.
eli
Range("B" & Vika 1) = Haettava ’M9 ja se tulee B sarakkeeseen
Range("B" & Vika 1).Offset(0, 3) = Haettava2 ’O6 ja se tulee E sarakkeeseen
Range("B" & Vika 1).Offset(0, 4) = Sheets("Syöttö").Range("D9") ja se tulee E sarakkeeseen
jne...
offset on 0 pohjainen joten
Range("B" & Vika 1).Offset(0, 0) on sama solu kuin Range("B" & Vika 1)
Range("B10").Offset(1, 3)=E11
jne...- kyselijä
kunde kirjoitti:
Nythän koodi hakee B sarakkeesta vuosilukua ja erää ja jos ei löydy niin tekee uuden rivin.
eli
Range("B" & Vika 1) = Haettava ’M9 ja se tulee B sarakkeeseen
Range("B" & Vika 1).Offset(0, 3) = Haettava2 ’O6 ja se tulee E sarakkeeseen
Range("B" & Vika 1).Offset(0, 4) = Sheets("Syöttö").Range("D9") ja se tulee E sarakkeeseen
jne...
offset on 0 pohjainen joten
Range("B" & Vika 1).Offset(0, 0) on sama solu kuin Range("B" & Vika 1)
Range("B10").Offset(1, 3)=E11
jne...Elikä joudunko minä kirjoittamaan kaikki kopioitavat kohteet kolmeen kertaan tähän makroon?
Enkö voi kutsua kohteita makrossa?
Tämäkään ei vielä toimi elikä kun on sama erä samalle vuodelle sen kuuluu kysyä tallennetaanko päälle ja jos vastaa kyllä niin se tekee tallennuksen mutta mun kokeiluni tekee vain silloin kun se on viimeinen tallennus elikä ”vika”.
Miten korjaan?
Älkää hermostuko mulle mutta olen vielä taitamaton ja siksi jään ellei jakseta neuvoa.
Minä olen muuttanut alkuperäisen kyselyni jälkeen noita kohteita M9 ja O6.
Sub Kopioi()
Dim Vika As Integer
Dim Haettava2 As Range
Dim Haettava As Range
Dim Hakualue As Range
Dim Löydetty As Range
Dim EkaSolu As String
Sheets("Syöttö").Activate
Set Haettava2 = Range("M9")
Set Haettava = 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, 1) = Haettava2 Then
Msg = "Erä on jo olemassa! " & "Haluatko tallentaa vanhan päälle!"
response = MsgBox(Msg, vbYesNo)
If response = vbYes Then Range("B" & Vika).Offset(0, 2) = Sheets("Syöttö").Range("D9")
Range("B" & Vika).Offset(0, 4) = Sheets("Syöttö").Range("A13")
Range("B" & Vika).Offset(0, 5) = Sheets("Syöttö").Range("L16")
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, 1) = Haettava2
Range("B" & Vika 1).Offset(0, 2) = Sheets("Syöttö").Range("D9")
Range("B" & Vika 1).Offset(0, 4) = Sheets("Syöttö").Range("A13")
Range("B" & Vika 1).Offset(0, 5) = Sheets("Syöttö").Range("L16")
End If
Else
Range("B" & Vika 1) = Haettava
Range("B" & Vika 1).Offset(0, 1) = Haettava2
Range("B" & Vika 1).Offset(0, 2) = Sheets("Syöttö").Range("D9")
Range("B" & Vika 1).Offset(0, 4) = Sheets("Syöttö").Range("A13")
Range("B" & Vika 1).Offset(0, 5) = Sheets("Syöttö").Range("L16")
End If
End Sub
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Riikka Purra on mukana Suomen huutokauppakeisari -sarjassa
Suomen huutokauppakeisari on tavallisten suomalaisten ohjelma. Sarjan suosiosta kertoo se, että nyt alkaa jo 19. kausi t1921703Kuuleppas
ensimmäiset naissuhteet toimii miehelle eräänlaisena oppikouluna, mutta hän ei välttämättä itse ymmärrä oppineensa mitää2591159Mulla ei ole Suomessa enää mitään
4 vuotta joutuu asumaan henkisessä vankilassa. Sitten voi muuttaa takaisin ulkomaille.180847- 43741
Provider miehistä..
Tietyt miehet puhuvat ilkeästi naisista, jotka haluavat elää miehen tuloilla. Eikö? Mutta miksi tietyt miehet siitä pah223738- 61728
Sinulle nainen
En ehkä koskaan osannut sanoa tätä oikein. Minun vaikeuteni luottaa liittyi ennen kaikkea menettämisen pelkoon. Siihen63705- 76628
Hei rakkaani.
Kohtaaminen lähestyy. Miten teemme sen? Kumpi ottaa yhteyttä vai törmäämmekö jossain sattumalta? Tuleva vaimosi50603Yt:t kunnassa päättyi
Oliko nämä tarpeelliset ja ratkeaako taloushuolet näiden avulla? Lehdessä ilmoitettujen lukujen perusteella lisää on tul70600- 40596
- 38593
Ethän voinut nainen tietää, että rikot rikotun
Omaa elämää taas mietin aamuyön tunteina. En vieläkään löytänyt muistin sokkeloista ainuttakaan onnen hetkeä. Kaipuu on68590Gallup: Kansalaiset eivät usko velkajarruun
Puolet suomalaisista ei usko velkajarrun vaatimien sopeutusten toteutuvan, kertoo Iro Researchin kyselytutkimus. Kokoom60558- 31538
Martsusta tuli leuhka
Ja ylimielinen. Hän ei nosta persettäkään ilmaseksi . Luulempa et nämä ei tee hyvää hyvinvointivalmennuksille.... Nannal182534- 90532
Tulisitpa käymään joskus vielä
Olisi niin kiva nähdä pitkästä aikaa. Oletko vielä joskus tulossa?... Niin monet muutoksen tuulet puhaltavat, olisi lohd24526Lämpimiä katseita aikoinaan vaihdettiin, siihen se sitten jäi
Sinulla uudet tuulet ja välttelet kohtaamistamme.30497- 6483