excel - Hjälp med div. frågor

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

excel - Hjälp med div. frågor

Nu ska vi se om jag lyckas förklara mitt problem...

I excel har jag ett blad med massa data
flera rader av information i respektive kolumn.

Från detta blad hämtar jag information med formeln = 'sheet'!a1

funkar fint.

Men där jag vill presentera informationen så har jag slagit samman flera celler.
så när jag enkelt ska kopiera in all information i listan genom att kopiera/klistra respektive rad så jag får in rätt info från bladet med rådatan så hoppar den för många celler nedåt istället för 1 steg i taget.
detta beror ju p att jag har slagit ihop celler i bladet där jag vill presentera informationen.

är det möjligt att säga åt excel att ändå hämta informationen från cell 1 och cedan cell 2 oavsett hur många celler nedåt jag drar...

edit:

Det jag vill göra är att kopiera en rad till raden nedanför
och tvinga att formler uppdateras med ett steg istället för flera (då jag har sammanslagna celler)
till exempel
I CELL A1: = 'sheet'!a1
I CELL A2: här vill jag kopiera cell a1 så den skriver ut ='sheet'!a2
nu skriver den ut A9 istället då celler är ihopslagna.

Trädvy Permalänk
Medlem
Registrerad
Feb 2016
Skrivet av hjarterkung:

Nu ska vi se om jag lyckas förklara mitt problem...

I excel har jag ett blad med massa data
flera rader av information i respektive kolumn.

Från detta blad hämtar jag information med formeln = 'sheet'!a1

funkar fint.

Men där jag vill presentera informationen så har jag slagit samman flera celler.
så när jag enkelt ska kopiera in all information i listan genom att kopiera/klistra respektive rad så jag får in rätt info från bladet med rådatan så hoppar den för många celler nedåt istället för 1 steg i taget.
detta beror ju p att jag har slagit ihop celler i bladet där jag vill presentera informationen.

är det möjligt att säga åt excel att ändå hämta informationen från cell 1 och cedan cell 2 oavsett hur många celler nedåt jag drar...

Så cell a1 i presentationsbladet ska innehålla cell a1 till A3 från databladet, och cell a2 ska innehålla cell A4 till A6 i databladet? Eller menar du tvärtom?
Ska du aggregera cellerna (summa, medelvärde etc) eller bara skriva vad som står i dom?

Skickades från m.sweclockers.com

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

jag ska bara skriva vad som står i dem.

här är ett exempel
https://onedrive.live.com/redir?resid=7FB4DE7A296ED17A!8098&a...

Som du ser så vill jag kopiera informationen från blad2 till blad1

men då celler är ihopslagna blir kopieringen fel... dvs formeln uppdateras inte så att den hämtar från varje ny rad utan varannan (pga av ihopslagningen)

kan jag tvinga formeln att hämta från nästa rad automatiskt och inte uppdateras pga ihopslagningen

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

Ett tillägg... kanske förenklar mitt problem att beskriva.

Jag har insett att sammanfoga (merga) celler inte är så bra. Så jag har tagit bort alla celler som är sammanfogade.

Nu har jag två stycken blad
Blad 1
Blad 2

Blad 1 innehåller rådata som jag klistrar in från extern källa.
Blad 2 ska presentera rådatan på ett trevligt sätt.

I blad 2
Cell A1 ska innehålla data från blad1 cell a1
Cell A2 ska vara tom
Cell A3 ska vara tom
Cell a4 ska vara tom
cell a5 ska vara tom
cell a6 ska vara tom
cell a7 ska innehålla data från blad1 cell a2

Hur gör jag en formel som jag sedan kan dra nedåt så att det blir samma mellanrum hela tiden och jag får med all data från blad1

Trädvy Permalänk
Medlem
Plats
Malmö
Registrerad
Maj 2014
Skrivet av hjarterkung:

Ett tillägg... kanske förenklar mitt problem att beskriva.

Jag har insett att sammanfoga (merga) celler inte är så bra. Så jag har tagit bort alla celler som är sammanfogade.

Nu har jag två stycken blad
Blad 1
Blad 2

Blad 1 innehåller rådata som jag klistrar in från extern källa.
Blad 2 ska presentera rådatan på ett trevligt sätt.

I blad 2
Cell A1 ska innehålla data från blad1 cell a1
Cell A2 ska vara tom
Cell A3 ska vara tom
Cell a4 ska vara tom
cell a5 ska vara tom
cell a6 ska vara tom
cell a7 ska innehålla data från blad1 cell a2

Hur gör jag en formel som jag sedan kan dra nedåt så att det blir samma mellanrum hela tiden och jag får med all data från blad1

Vet inte om det hjälper dig att lösa (då jag inte riktigt blir klok på vad du vill), men F4 låser referensen på celler. Den är smidig om man vill använda hörnan längst ner till höger för att "dra ut" formler. F4 roterar mellan att låsa både kolumn och rad, sen bara rad, sen bara kolumn. (Du måste markera texten i formlen som du vill låsa först, sen tryck F4).
Om du ska kopiera formlerna neråt så funkar CTRL och nedre vänstra hörnan)

Om jag vore dig dock, hade jag gjort alla dessa referenser först. Sen låst referenspunkterna efter, så får du A2=A2 så att säga. Sen efter den infogat 5 rader mellan. Dessa kan du sen markera och klistra in som 5 kompletta rader mellan.

Det kan ev gå att göra första 3 referenserna, för hand, så att excel känner av mönstret. Sen dra ner det, men det är tveksamt pga tomma cellerna.

Trädvy Permalänk
Medlem
Plats
Södertälje
Registrerad
Jul 2011

Detta går att lösa med 'INDIRECT' och sedan stega upp referensen med hjälp av heltalsdivision.

t.ex.
=INDIRECT("'sheet2'!a"&(INT(ROW()/7)+1))

Denna formel hämtar information från cell A1 i de första 6 raderna sedan cell A2.
Hoppas detta funkar för dig.

Jag kan ha fel, men jag tror att jag har rätt.

Trädvy Permalänk
Medlem
Registrerad
Feb 2016

***
Borttagen till förmån för @Mattsingen s lösning
***

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

Excel - skapa detaljerad lista (collapse)

I excel om jag har en lång lista med information i cell A1, A2, a3 osv.

Jag vill skapa "detaljerad information" för respektive rad.
Typ en grupp av rader som man expanderar där mer detaljer om den raden går att läsa.

Sedan stänga den detaljerade infon så listan blir så kompakt som möjligt.

Vilket är bästa sätt att få till detta?

Känner till att det går att gruppera rader...
undrar om det finns andra sätt.

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

excel - varning om datum har passerat

Hej
I en kolumn skriver jag massa datum.
I denna kolumn vill jag bli varnad om något datum håller på att inträffa eller har passerat.

Med Conditional Formatting kan jag göra detta... men vad jag vet endast varning "nästa månad", "denna månad" och "förra månaden".

Jag vill även få varning om datumet är 5 månader gammalt eller ett år gammalt osv.
Mer detaljerad kontroll på när jag ska bli varnad och framförallt hur jag ska bli varnad.

Helst vill jag ha ett VBA script som

varna om datum i kolumn A:A håller på att passeras eller har passerats.
Varna genom att färga cellen, varna genom en pop-up ruta.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Sep 2011

Hmm jag skulle läga reglerna i conditional formatting sen kan du i VBA-skriptet loopa alla celler i A:A och kontrollera färgen. Då slipper du bygga reglerna på flera ställen.

Jag rekommenderar att du gör något i stil med detta.

Dim r_datum as range For each r_datum in Range("A2", "A" & Range("A1").end(xldown).row) If r_datum.interior.color = 2 then msgBox("Hurru, datum " & r_datum & " har passerat. Gör " & r_datum.offset(0,1)) End if

Intel i7 2600K, ASUS Geforce GTX 780, 16Gb Ram, ASUS mATX Z67, Fractal Design Define Mini, Corsair AX-750.

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

ok, förstår inte riktigt din ko.
förklara gärna vad den gör.
funkar den för hela kolumnen A?
dvs kollar färgen för alla celler?

hur gör jag conditional formatting så att den färglägger celler med datum som är på väg att infalla, har infallit och är gamla (1 dag gamla till 1 år gamla)

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

excel - skriv ut cellvärde i userform label

jag har skapat ett userform

där har jag skapat en label

Jag vill att denna label ska skriva ut vad som står i sheet45 cell a1

Hur gör jag det?
Samt vart skriver jag vba koden?

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Jul 2003
Skrivet av hjarterkung:

jag har skapat ett userform

där har jag skapat en label

Jag vill att denna label ska skriva ut vad som står i sheet45 cell a1

Hur gör jag det?
Samt vart skriver jag vba koden?

http://www.ozgrid.com/forum/showthread.php?t=87600

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

skriver i modul1 detta:

Sub test()

NewPersonal1.Label1.Text = CStr(Range("b10").Value)
UserForm1.Show

End Sub

inget från cell b10 skrivs ut i label1 som ligger i userform NewPersonal1

Skriver följande i NewPersonal1

Private Sub UserForm_Initialize()
Me.Label1.Text = CStr(ThisWorkbook.Sheets("Personal").Range("B10").Value)
End Sub

Får felmeddelande

Eftersom jag använder label och det du länkade till gällde textbox... funkar detta?

vad missar jag?

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

excel - formatera textbox till %

Har ett userform i excel

I userform har jag några textboxes

Jag vill när jag skriver 1 i en textbox att det ska skrivas ut som 1% i en cell..

Nu blir det 100% i cellen där värdet ska skrivas ut.

hur formaterar jag textboxen så att den också är i % som jag gjort med cellen?

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Maj 2009

nu vet jag inte hur man skriver ut från userforms, men att istället bara skriva 1 så kan du skriva 1&"%".

eller så gör du såhär:

Min dator: Silent Base 600 | 1700X @ 3.9Ghz | MSI Gaming X 1080TI | RM750X | 512Gb M2 | 16Gb 3200mhz Ram | S34E790C @ 3440x1440
Tjejens dator: Define r4 | i5 3570k @ 4.2ghz | GTX Titan | 750w Supernova | 240gb SSD | 32gb ram
Citera/Tagga för svar!

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Feb 2009

Du gör ju redan om texten till ett tal, så dela det på 100 så ska du få rätt resultat. Rent matematiskt är ju 1 = 100%, antagligen därför du får det resultatet nu.

NZXT H2, OCZ ModXStream-PRO 600W, MSI P67A-C45, Intel i5 2500K @ 4.4GHz, Gigabyte GTX 460, 4GB Corsair Vengeance DDR3 1600MHz CL9 (2x2GB), OCZ Agility 60GB, Seagate Barracuda 250GB, 2x Western Digital Caviar 1TB

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

ja, men hur gör jag för att användarna ska förstå detta...
jag kan känna till att man skriver 1 så får man 100%
jag kan själv känna till att skriva 0.1 för att få 10% osv.
men användarna blir det för krångligt för, tro mig.

enligt ovan bild så är det så jag konfigurerar cellerna.

men jag skapar userforms för att användarna ska fylla i dokumentet.
därför måste de skriva det mest logiska. dvs 10 om de vill ha 10% osv.

att konfigurera cellerna enligt bilden ovan är ju rätt.
då kan jag direkt i cellen skriva 1 och det blir 1%
men när jag skriver 1 i userform så blir det 100%

så kan jag konfigurera textfälten på samma sätt som jag konfigurerat cellern?
för i cellerna funkar det att skriva det man vill ha
i textfälten funkar det inte.

Trädvy Permalänk
Medlem
Plats
Sverige
Registrerad
Sep 2002
Skrivet av hjarterkung:

ja, men hur gör jag för att användarna ska förstå detta...
jag kan känna till att man skriver 1 så får man 100%
jag kan själv känna till att skriva 0.1 för att få 10% osv.
men användarna blir det för krångligt för, tro mig.

enligt ovan bild så är det så jag konfigurerar cellerna.

men jag skapar userforms för att användarna ska fylla i dokumentet.
därför måste de skriva det mest logiska. dvs 10 om de vill ha 10% osv.

att konfigurera cellerna enligt bilden ovan är ju rätt.
då kan jag direkt i cellen skriva 1 och det blir 1%
men när jag skriver 1 i userform så blir det 100%

så kan jag konfigurera textfälten på samma sätt som jag konfigurerat cellern?
för i cellerna funkar det att skriva det man vill ha
i textfälten funkar det inte.

Detta kanske är till hjälp :

http://www.mrexcel.com/forum/excel-questions/675769-userform-...

Skickades från m.sweclockers.com

...

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

jag närmar mig

Me.TextBox2.Value = Format(Me.TextBox2.Value, "0%")

då kan jag skriva 1 och det per automatik skrivs 100%

men jag kan inte skriva något annat än 1,2, 3, 4 osv.

kan inte skriva 12% eller något.

så jag förstår inte riktigt hur jag ska få till det med /100

Trädvy Permalänk
Moderator
Registrerad
Aug 2007
Skrivet av hjarterkung:

ja, men hur gör jag för att användarna ska förstå detta...
jag kan känna till att man skriver 1 så får man 100%
jag kan själv känna till att skriva 0.1 för att få 10% osv.
men användarna blir det för krångligt för, tro mig.

enligt ovan bild så är det så jag konfigurerar cellerna.

men jag skapar userforms för att användarna ska fylla i dokumentet.
därför måste de skriva det mest logiska. dvs 10 om de vill ha 10% osv.

att konfigurera cellerna enligt bilden ovan är ju rätt.
då kan jag direkt i cellen skriva 1 och det blir 1%
men när jag skriver 1 i userform så blir det 100%

så kan jag konfigurera textfälten på samma sätt som jag konfigurerat cellern?
för i cellerna funkar det att skriva det man vill ha
i textfälten funkar det inte.

Själva grejen när man använder formulär i Excel är ju att du gått in i ett läge där du själv får programmera lösningen. Och därmed så har du helt andra problem med användarupplevelsen. Du bör hantera att användaren skriver in 10 och menar 10%, men du bör också hantera att användaren skriver in 10% eller 0,1%. Det kan hända att Excel hanterar dessa olika. Du bör dessutom hantera om användaren skriver in bokstäver och andra tecken som inte är korrekta, även i kombination med korrekt data.

Rent generellt så tycker jag ett program ska vara intuitivt att använda. Om användaren förväntar sig att kunna skriva in 10 när han menar 10% så är det det man får lösa. I vissa fall går det att lösa med hjälp av text i programmet som instruerar användaren, men i många fall så är användaren ganska hårt låst till tex procent och då får man acceptera det. Ett exempel på detta är tex rabatt. Visst kan man ange rabatt i kr också, men det vanligaste är nog procent. Att behöva ange 0,1 för att ge 10% rabatt tycker jag går fetbort.

Enligt mig är detta skillnaden mellan att bli en lyckad eller mindre lyckad utvecklare. Som utvecklare skriver du program som andra ska använda. Ju bättre användaren kan förstå ditt program, desto bättre utvecklare är du.

Skrivet av hjarterkung:

jag närmar mig

Me.TextBox2.Value = Format(Me.TextBox2.Value, "0%")

då kan jag skriva 1 och det per automatik skrivs 100%

men jag kan inte skriva något annat än 1,2, 3, 4 osv.

kan inte skriva 12% eller något.

så jag förstår inte riktigt hur jag ska få till det med /100

Mitt råd är att inte formatera om användarens input. Gör bara en konvertering när du sparar ner i en rad i Excel samt när du läser tillbaka raden om du stödjer ett sådant fall. Du kan välja att visa % i själva textboxen, men du kan även välja att visa % som en statisk label utanför textboxen. Det senare är nog vad jag skulle valt om värdet alltid är i procent.

Använd gilla för att markera nyttiga inlägg!

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

jag håller med dig.
men det är lite därför jag försöker få det så enkelt som möjligt.

just nu känns det som jag släpper hela grejen med %
kör på "nummer" och då funkar det att användaren kan skriva vad han/hon känner för.
sedan får jag i presentationen skriva det hela som procent.

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

hah, jag kom på en lösning

formatera alla celler som 0.0#
sedan macro som skriver om dom när användaren är klar till #"%"
så får jag ut precis vad jag ville.

Trädvy Permalänk
Medlem
Plats
Sundsvall
Registrerad
Feb 2008

Nu har du redan fått till en lösning.
Men ett alternativ är ju att dela inmatningen från din userform med 100.
Så om du skriver 1 så delar den det till 0.01 osv.
Sen skriver den in 0.01 i cellen som sedan omvandlar det till %.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Sep 2011

Upptäckte att interior.color inte ändras på en cell när färgen kommer från conditional formatting.

Intel i7 2600K, ASUS Geforce GTX 780, 16Gb Ram, ASUS mATX Z67, Fractal Design Define Mini, Corsair AX-750.

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Aug 2012

Är verkligen inte bra på excel och använder tom googles.
Där kör jag med =today -x i olika färger. Då kan man få exakt vilka datum man vill att bli den färg man vill.

Tadaa

Trädvy Permalänk
Medlem
Plats
stockholm
Registrerad
Jun 2003

excel - texbox värde anger rad som ska tas bort

Jag vill låta användaren välja vilken rad som ska tas bort.

Tänker mig något sådant här

Set rp = RemovePersonal1.TextBox1.Value
ActiveSheet.Rows(rp).Delete

altså är rp värdet som användaren skriver i textbox1 i userform som heter removepersonal1

edit

även prövat
dp = RemovePersonal1.TextBox1.Value
Set ws = Worksheets("Personal")
Rows(dp).EntireRow.Delete

men det funkar inte heller

Trädvy Permalänk
Forumledare
Registrerad
Jan 2005

*Trådar sammanfogade i enlighet med §3.3 (korspostning)*
/moderator

Synpunkter gällande modereringen? Då kan du kontakta mig, moderatorerna, Sweclockers
Ursäkta min stavning, jag är dansk