Just nu i M3-nätverket
Gå till innehåll
DanneK

Nya rader baserat på villkor

Rekommendera Poster

Jag är säker på att detta är möjligt, bara det att jag inte är kapabel att förstå…
Skall se om jag kan beskriva vad jag är ute efter ordentligt.

Jag önskar presentera data från ett exeldokument och har en massa härliga formler som gör merparten jobbet åt mig efter att importen från den externa datan i sin tur gjorts.

Nu till problemet.
Jag skulle under summeringar och liknade i ”Presentation” vilja loopa ut resultaten som uppfyller ett visst antal villkor och lägga till det som nya rader. Det är okänt antal rader var gång, från 0-ca 150st. Antalet kolumner är kända.
Datan är samlade i en flik ”Data”

Dvs…

 

Jag skulle vilja få fram följande:

 

Rubrik | Summering1 | Summering2| Summering3| - Löst del.
Data!Dx | Data!Ex| Data!Fx| Data!Kx

Data!Dx | Data!Ex| Data!Fx| Data!Kx

Data!Dx | Data!Ex| Data!Fx| Data!Kx

 

x för okänd rad som uppfyller tre villkor, Datum from, Datum tom, samt ett fritextvärde, där dessa rader enl. ovan är okänt antal.

Hitintills har alla försök slutat med kaos, likt de flesta VBA försök jag gör, varvid jag inte ens har någon vettig kod att börja med. Alla tips är välkomna, och det behöver inte vara en VBA-lösning, bara jag som misstänker att det är dit jag skall vända mig.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Du får in extern data som du gör beräkningar på och sedan vill presentera delar av?

Du kan göra en For-loop och läsa in all data i vba, beräkna och värdera sedan vad som ska printas på presentationsfliken.

Alternativt kan du flagga data eller rader redan med formlerna så kan vba bara damsuga upp de rader som du definierat med formler.

Kan hända jag missförstår dig helt här men men :)

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
32 minuter sedan, skrev Erhnam:

Du får in extern data som du gör beräkningar på och sedan vill presentera delar av?

Du kan göra en For-loop och läsa in all data i vba, beräkna och värdera sedan vad som ska printas på presentationsfliken.

Alternativt kan du flagga data eller rader redan med formlerna så kan vba bara damsuga upp de rader som du definierat med formler.

Kan hända jag missförstår dig helt här men men :)

Korrekt att jag importerar data till separat flik, som jag sedan använder i presentationsfliken.

Pillar ogärna med importen.

 

Om jag använder samma exempel som ovan men försöker vara lite mindre kryptisk skulle det kunna se ut som följande

 

Sålda Bananer | 42st | 750kr | 3 kunder| - Löst del.
Kalle | 40st | 700kr

Olle | 1st | 35kr

Måns | 1st | 15kr

 

Där det är Kalle, Olle, Måns raderna jag försöker lösa (och Olle måste sluta handla bananer för det priset;) )

 

Jag vet inte på förhand om Måns kommer köpt några bananer i vald tidsperiod, faktum är att jag inte vet namnet på någon, utan jag vet bara att jag säljer bananer, och under vilken tidsperiod jag vill plocka ut siffror för.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Vill du hjälp med att flytta data eller filtrera och flytta?

Om du vill ha hjälp med att filtrera så måste regler för urval skapas. Exempelvis att man beräknar rimligt pris (baserat på såld mängd och totalbelopp) och vid nog stort avvik så plockas den data över till presentation.

Du nämner vald tidsperiod, har du redan hanterat det urvalet eller är det en del av problemet som ska lösas?

Är en rad = en kund? Eller kan samma kund komma på flera rader då den handlat flera gånger under samma tidsperiod?

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Är du bekant med pivottabeller. De är till för det du vill göra. Värt varje sekund du lägger på att lära dig (som överkurs finns Powerpivot ). 

https://support.office.com/sv-se/article/skapa-en-pivottabell-för-att-analysera-kalkylbladsdata-a9a84538-bfe9-40a9-a8e9-f99134456576

Det finns en hel del på Youtube om du vill snabbspola och se om det är rätt för dig.

 

Säg att rådata bara har tre kolumner:

Kund| Vara|Kr

 

Då kan du lägga 

Filter=vara

Rader=kund

Kolumner= ∑Värden  (skapas automatiskt. det behöver inte du lägga in)

Värden= Antal av Vara (klicka och ändra summa/antal via värdefältsinställningar)

Värden= summa av Vara

 

Pivottabellens "filtervariabel" gör att du exempelvis kan välja att bara titta på Bananer. Vill du göra det riktigt enkelt för användarna kan du titta på "Infoga utsnitt" och koppla den till "Filter" .

 

 

PS1

Om du börjar med att göra om ditt rådataområde till Excel-tabell (Ctrl+T) innan du gör pivottabellen så behöver du inte göra om indataområdet till Pivottabellen när du importerar nya data (om du har tur. och excel-tabellen utökas automatiskt.)

 

PS2

Du uppdaterar pivoten genom att högerklicka, snabbkommandot (Ctrl+alt+F5) eller köra VBA*

*Uppdatera med VBA:

Worksheets("Blad1").PivotTables("Pivottabell1").PivotCache.Refresh

eller bara en allmänn:

ThisWorkbook.RefreshAll

/DS

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Japp.

 

Men om den inte gör det du vill så får du väl testa olika slags filtreringar. 

 

Stå i rådata och gör om till Excel-tabell  (Ctrl+T)   ... rubriker finns

 

Filtrera som du skall och kopiera -> klistra in i målbladet

Då följer bara synliga (filtrerade) rader med.

Spela in makro så ser du vad koden blir

 

Alternativt:

Kolla det som tidigare hette power query: 

stå i rådata och gör om till Excel-tabell  (Ctrl+T)   ... rubriker finns

och kör:

DATA->Hämta och transformera ()

Från tabell/Intervall

Där borde du kunna ställa in  vilka rader du skall kopiera med hjälp av M-kod och spara som en fråga

 

 

Om gammal excel. Kolla filtrera-Avancerat, kopiera till annan plats

https://pcforalla.idg.se/2.1054/1.380533/sa-trollar-avancerat-filter-fram-onskad-information

https://support.office.com/sv-se/article/filtrera-genom-att-använda-avancerade-villkor-4c9222fe-8529-4cd7-a898-3f16abdff32b

 

Då kan du enkelt bestämma exakt vad du vill kopiera. Men jag har aldrig fått att funka över flera blad (och du ville ju inte röra originaldata.).

 

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Sitter här och sliter mitt hår med pivot...
Samtigt som jag ser och klurar på om jag inte skulle kunna göra detta med massor av sql-frågor, och använda mig av vba för att skjuta in nya rader på något sätt (min ursprungliga lösning som jag inte fått att fungera).

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

skriver det jag skrivit så många gånger här:

Ta ett steg tillbaka och tänk dig att Excel fungerar bäst när du behandlar dina data som i en databas.

Tabeller med data och rapporter som sammanställer dessa data. Via formler, via Pivot, PowerPivot eller liknande.

 

Har inte satt mig in i grundproblemet men problemen brukar bli mindre om dina data är strukturerade korrekt.

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...