Yritän poimia myyntitietoa työkirjasta toisiin osastokohtaisiin työkirjoihin päivämäärän perusteella. Päivämäärät näissä osastokohtaisissa työkirjoissa vain ovat eri muotoa kuin alkuperäisessä. Osastokohtaisissa on normaali päivämäärä (21.11.2008) ja kaikki vuoden päivät lueteltuna, mutta alkuperäisessä työkirjassa joka kuukaudelle on oma välilehti ja päivät on ilmoitettu muodossa 1, 2, 3 jne. Ja päivät lisääntyvät kuun edetessä, mutta joku päivä voi jäädä välistä poiskin.
Osastokohtaisissa työkirjoissa Sarakkeessa A on päivämäärä ja sarakkeen B soluihin haluaisin kerätä alkuperäisen työkirjan myyntitiedon.
Alkuperäisessä on sarakkeessa A kuukauden päivä numerona ja sarakkeissa B - L päivän myynti osastoittain.
Millä kaavalla saisin myyntitiedot kerättyä osastokohtaisiin työkirjoihin? En osaa vaikka kuinka yritän ja vanhoja ohjeita luen.
Tämä homma on tehtävä päivittäin, joten joku automaatio olisi helpottava. Nyt olen vain kopioinut päivän myynnit mutta se on hidasta ja virheitä aina välillä tulee.
Kiitos avusta!
Kaava hukassa
1
477
Vastaukset
originaalissa valitse haluamasi kuukausi välilehdeltä sarakkeesta A se päivämäärä, jonka rivitiedot haluat siirtää osastojen työkirjoihin
moduuliin...
Sub Siirrä()
Dim Päivä As Integer
Dim Kuukausi As String
Dim Vuosi As Integer
Dim Haku As String
Dim Myynti As Double
On Error Resume Next
Application.DisplayAlerts = False
Application.ScreenUpdating = False
If ActiveCell = "" Then
MsgBox "Valitsemasi solu on tyhjä!"
Exit Sub
End If
Päivä = ActiveCell
'MUUTA TEKSTI JOS TAULUKKO EI OLE NIMETTY TAMMIKUU, HELMIKUU...
'JOS TAMMI, HELMI... NIIN MUUTA TAMMI, HELMI...
Select Case UCase(ActiveSheet.Name)
Case "TAMMIKUU"
Kuukausi = 1
Case "HELMIKUU"
Kuukausi = 2
Case "MAALISKUU"
Kuukausi = 3
Case "HUHTIKUU"
Kuukausi = 4
Case "TOUKOKUU"
Kuukausi = 5
Case "KESÄKUU"
Kuukausi = 6
Case "HEINÄKUU"
Kuukausi = 7
Case "ELOKUU"
Kuukausi = 8
Case "SYYSKUU"
Kuukausi = 6
Case "LOKAKUU"
Kuukausi = 7
Case "MARRASKUU"
Kuukausi = 8
End Select
'MUUTA TARVITTAESSA
Vuosi = 2008
'MUUTA työkirjojen nimet b,c,d...
'B SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 1)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "b"
'C SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 2)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "c"
'D SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 3)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "d"
'E SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 4)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "e"
'F SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 5)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "f"
'G SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 6)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "g"
'H SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 7)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "h"
'I SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 8)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "i"
'J SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 9)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "j"
'K SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 10)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "k"
'L SARAKKEEN OSASTO
Myynti = ActiveCell.Offset(0, 11)
Haku = Päivä & "." & Kuukausi & "." & Vuosi
EtsiJaSiirrä Haku, Myynti, "l"
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Function EtsiJaSiirrä(Päiväys As String, Tieto As Double, Osasto As String) As Range
Dim Solu As Range
Dim Työkirja As Workbook
Päiväys = Format(Päiväys, "Short Date")
On Error Resume Next
'MUUTA POLKU
Set wb = Workbooks.Open("C:\Documents and Settings\Kunde\Omat tiedostot\" & Osasto & ".xls", False, False)
wb.Sheets(1).Activate
Set Solu = Cells.Find(What:=CDate(Päiväys), After:=Range("A1"), LookIn:=xlFormulas, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
Range(Solu.Address).Offset(0, 1) = Tieto
On Error GoTo 0
wb.Close True
End Function
Keep Excelling
@Kunde
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
S-kauppa nosti hintoja, K-kauppa laski
Elintarvikkeiden arvonlisävero laski vuodenvaihteessa 13,5 prosenttiin. S-kauppa siirsi alennuksen suoraan katteisiin pi1537512Hiihtäjä Vilma Nissisen kommentit aiheutti paniikkia
ja hernettä vedettiin nenään. Nissinen kertoi torstaina haastattelussa, kun häneltä kysyttiin, että tykkääkö hän hiihtä1305179Huuto yltyy persujen piirissä Venezuelan johdosta.
Kohta kakofonia yltyy kun persut tajuavat mitä Venezuelassa tapahtui. Von den Leydenki jo kipuilee kuten persut EU:ssa y432670- 2612268
Nyt ottaa persua pattiin: sähköauto joulukuun myydyin
🤣 prööt prööt pakoputkellaan pörisevää persua ottaa nyt saamaristi pattiin, kun paristoilla kulkeva sähköauto on noussu812218Ovatko Perussuomalaiset kommunisteja?
Toiset sanovat että ovat, toiset sanovat että eivät. Ainakin heillä on paljon sen aatteen piirteitä, koska haluavat kont672068Yhdysvaltain hyökkäys Venezuelaan on YK:n peruskirjan mukaan laiton hyökkäyssota
Oman sävynsä tähän tuo vielä se, että hyökkäys kohdistettiin nimenomaan valtiojohtoa vastaan. Toki, kun tavoitteena on v5662037Ei tule uni
Kuten epäilin. Onneksi viime yön sain ihan hyvin nukutuksi. Tiesin kyllä, ettei tästä mitään tänään tule.551094Miksi juuri Venezuela?
Kaikista maailman valtioista Trump otti silmätikukseen Venezuelan. Mutta minkä ihmeen takia? Kyseessä on kuitenkin vähäp2911067Laittaisin whatsuppissa viestin
Jos olisin täysin varma että se on toivottua vielä kun aikaa on mennyt ja että toivot sitä edelleen.651046