Hej,
Har en fundering om det är möjligt att föra över rader i ett blad som jag har till ett annat i excel 2010.
Jag har i blad1, datan i området C4:V30.
I F4 så vill jag kunna välja att skriva t.ex T, D och W, och beroende på det valet , ska G4-K4 läggas i bladet T eller D som redan finns osv,
och läggas där så den fylls uppifrån och ner utan tomma rader.
Alla bladen med T, D och W ser likadana ut.
Är detta möjligt på något smidigt vis?
Hoppas det gick att förstå förklaringen.
Du blandar kolumnnummer och kolumnbokstäver så jag är osäker på om jag missförstår dig rätt.
Men, till saken, även om du inte kan "pusha ut" data från blad1 så kan du kan hämta data med hjälp av formler i blad T osv. Men det blir inte vackra formler...
Den här formeln kan du t.ex klistra in i Cell A1 på blad T:
Ja det vart lite blandning i förklaringen så jag skrev om det nu.
Men du förstod iallafall rätt, och den funkade hur bra som helst, men har en fundering, om man skulle vilja att den ska börja mata in i C4 i T-Bladet , hur gör man då, går det
eller är man styrd att börja i A1?
Och är det möjligt att lägga till ännu en cell t.ex C4?
Orkar inte testa, men i princip så ärdet två delar som behöver ändras:
RAD() **** returnerar vilken rad formeln står på, används som en räknare
KOLUMN() **** returnerar vilken kolumn formeln står i, används för att bestämma vilken (relativ) kolumn i blad1 du vill returnera data från
Om du startar i C4 istället för A1 så kommer alla RAD() att bli 3 för höga och kolumn 2 för höga. det kan du lösa på flera sätt men det enklaste är att helt enkelt skriva in A1 i RAD() och KOLUMN() formeln, dvs RAD(A1), KOLUMN(A1). Då blir formeln som skrivs in i C4 så här:
=OM(ANTAL.OM(Blad1!$F$4:$F$30;"T")<RAD(A1);"";FÖRSKJUTNING(Bla d1!$F$4;PRODUKTSUMMA(MINSTA((Blad1!$F$4:$F$30="T")*RAD(Blad1 !$F$4:$F$30);ANTAL.OM(Blad1!$F$4:$F$30;"<>T")+RAD(A1)))-4;KOLUMN(A1)))
Snabbt om vad de olika delarna gör ANTAL.OM(Blad1!$F$4:$F$30;"T")= hur många "T"-rader finns det i ursprungsbladet
Så den första delen av formeln ser helt enkelt till att returnera "" (ingenting) när vi är klara med den sista "T"-raden (annars blir det fula felmeddelanden)
OM(ANTAL.OM(Blad1!$F$4:$F$30;"T")<RAD();"";
Här används alltså RAD() som en räknare.
Sen kommer det som skall utföras när det finns kvar "oförbrukade" T-rader:
FÖRSKJUTNING(startpunkten i Blad1;Hur många rader den skall förskjutas;hur många kolumner den skall förskjutas)
startpunkten i Blad1 =Blad1!$F$4 (Eftersom man förskjuter minst ett steg utifrån ursprungsformlen så skall den börja ett steg åt vänster och nedanför. När jag tänker efter skall det nog står Blad1!$F$3
hur många kolumner den skall förskjutas = Kolumn() DVS formelns kolumnnummer
Hur många rader den skall förskjutas=det är den komplicerade delen, PRODUKTSUMMA(MINSTA((Blad1!$F$4:$F$30="T")*RAD(Blad1 !$F$4:$F$30);ANTAL.OM(Blad1!$F$4:$F$30;"<>T")+RAD()))-4