Från ett Excal document till ett annat.
Är så att jag skulle behöve hämta data från ett exceldocument och uppdatera ett annat (det jag står i)
Alltså jag har ett excel document som kör VBKod som ska hämta rabatter för vissa produkter i dokumentet som jag står i från att annat document som innehåller dessa rabatter. Dessa är sammankopplade med KundID. Hur hittar jag "CurrentDB" alltså det excel ark jag står i så att jag kan uppdatera datan i det? Eller kan man göra nån SQL av hela kakan? Man ska alltså ta första posten i rabatt filen, lite reda på den kundID och det produktID och sen ändra fältet rabett till det som fanns först i rabatt filen och sen fortsätta igenom hela filen.
//Emil
Svara
Sv: Från ett Excal document till ett annat.
Ja, det hade nog lämpligast gjorts som en databaslösning. Det är naturligtvis inte omöjligt att göra det i excel, och det är ganska lätt.
För att få nuvarande ark använder du ActiveSheet, och för att få nuvarande arbetsbok använder du ActiveWorkbook.
Sen beror det lite på dina data hur du bör lägga upp det.
T.ex.:
Du ville ha både kundID och produktID matchade?
Sen antar jag att det inte finns några dubletter av såna "par".
Då börjar makrot med att skapa en ny kolumn i både det arket du hämtar ifrån, och det arket du står i. I de kolumnerna så konkatenerar du kundID och produktID. Om du har kundID i kolumn A och prodID i kolumn B och dina data slutar i kolumn E, så skriver du följande i F2: =A2 & " " & B2
Det skriver man lätt i VBA som Range("F2:F5").FormulaR1C1="=RC[-4] & "" "" & RC[-5]", typ. (siffrorna får du fixa till)
Sen kan du sköta det med HLOOKUP, och då är du nästan klar.
Jag tror du klarar det utan problem; återkom annars.
Svara
Sv: Från ett Excal document till ett annat.
En fråga bara. Har flera flickar, en för t ex Ica och en för Coop. Men har anpassat koden så att det inte spelar nån roll vad fliken heter osv. Så ska använda samma kod till alla flikar. Men vart ska jag placera VBKoden? Lägger jag den på ett ark så når inte de andra den, lägger jag den på arbetsboken så når jag den inte heller. ?
Tack för hjälpen också :)
//Emil
Svara
Sv: Från ett Excal document till ett annat.
Lämpligtvis i en modul. Gå till VBA Editor, högerklicka på arbetsboken och välj Insert->Module.
Svara