# Register i Excel
Author: AktieTrader

Jag ska skapa ett Excelark där ett antal olika personer ska få ett löpnummer var gång de öppnar arket och skriva in en uppgift.

Det går ju göra med ett enkelt ark där man har listat alla nr och personen öppnar arket och skriver i sin uppgift. Nackdelen är att om en person redan har arket öppet så kan inte någon annan skriva in något nytt förän den första personen har stängt arket.

Går det lösa på något vis att var och en har ett excelark (inmatningsark) som i sin tur hämtar uppgifter från ett gemensamt ark. Så fort någon öppnar inmatningsarket så hämtas det första lediga nummret och samtidigt markeras detta nummer som upptaget så att ingen annan ska använda samma nr. Men ändå kunna använda registret samtidigt.

## Comment 1
Author: kekke

#0

Skapa en textfil med en löpnummerserie;  
en enda rad t.ex. 1001

I varje arbetsbok som ska få ett löpnummer  
skapa ett makro som :

\* Öppnar textfilen och läser av löpnumret  
\* Spara i variabel  
\* Ökar löpnumret med 1  
\* Sparar textfilen med det nya löpnumret

Subrutinen Auto\_Open() körs alltid när  
arbetsboken öppnas.

/ kekke

PS. Gemensam arbetsbok, kanske idé  
      att dela arbetsboken

## Comment 2
Author: johan

Varför inte ha en delad arbetsbok? Löpnummer kan nog enklast genereras med formeln =RAD() som hämtar numret som är på samma rad.

Varje gång en delad arbetsbok sparas så uppdateras alla andras värden också, så då borde det vara liten risk att man skriver på samma ställe. Och om man skriver på samma ställe så har du spårade ändringar och kan få tillbaka gammalt också.

## Comment 3
Author: kekke

Om informationen är gemensam är en delad  
arbetsbok naturligtvis att föredra.

Är man många som delar arbetsboken och  
dessutom ganska frekvent skriver på nya  
rader ( löpnummer ) är det stor risk för  
konflikter.

( Flera användare har skrivit på samma  
  rad och någons data måste gälla )

I delade arbetsböcker gäller det att i möjligaste  
mån förhindra att man skriver på samma ställe för  
att undvika detta.

Lösningen i detta fall skulle kunna vara att man  
skapar en löpnummerserie för varje användare.

Kalkylbladets första kolumn skulle kunna se ut så här  
från början :

10001  
10002  
..  
10025  
11001  
11002  
..  
11020  
12001  
12002  
..  
12039

Användare Aktietrader vet att hans löpnummerserie är  
mellan 10001 - 10999 och skriver bara på rader  
där kolumn A har dessa värden.  
När man inte ha så många rader reserverade får  
man manuellt infoga rader.  
Kanske 10026-10050 i kolumn A nästa gång.

En annan användare blir till tilldelad ett annat  
intervall och håller sig till detta intervall.

På detta sätt blir det inga konflikter

/ kekke

## Comment 4
Author: AktieTrader

#2 Det får jag testa först, det verkar enklast.
