Avatar billede kgp43 Nybegynder
10. december 2003 - 13:57 Der er 19 kommentarer og
1 løsning

Lidt kompliceret

Okay, here we go.

Jeg har brug for at kommandoen: =row()-4, automatisk bliver smidt i celle A, når brugeren skriver noget i en ny række. Dvs. at "=row()-4" bliver automatisk tilføjet i den korrekte celle. Er dette muligt?

Kan man evt låse hele kollonne A, så brugeren ikke kan ændre i formen?
Avatar billede kgp43 Nybegynder
10. december 2003 - 13:59 #1
Forresten, brugeren skal kunne sortere i regnearket, så formlen skal flyttes med de relevante rækker.
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:06 #2
Ved ikke om jeg beskred det tydelig nok.

Hvis der bliver skrevet noget i række X, så skal celle A automatisk udfyldes med formlen: "=row()-4". Brugeren må ikke kunne redigere i denne celle, men den skal stadig flyttes med når der sorteres i dataene.
Avatar billede bak Forsker
10. december 2003 - 14:09 #3
hvordan vil du hindre at brugeren redigerer cellen ?
lidt uklart: vil du fastholde det rækkenr den havde fra starten inden du sorterer
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:12 #4
Række nummeret er kun til at gøre det lette for brugeren at orientere sig på udskrifterne. De skal bare have et fortløbende nummer.
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:12 #5
Jeg ved ikke hvordan jeg vil hindre brugeren i at redigere i celle, det var derfor jeg spurgte :P
10. december 2003 - 14:15 #6
=IF(B1<>"";row()-4;"")
Denne formel viser kun noget i A-kolonnen, hvis der indtastes i B-kolonnen.
10. december 2003 - 14:18 #7
Der efter markerer du fra B-kolonnen og til og med sidst brugte kolonne til højre.
Vælger Formater->Celler, fanen Beskyttelse
Fjern markeringen ved feltet: Låst
Vælg Funktioner->Beskyttelse->Beskyt ark...
Klik Ok
Herefter kan du redigere alle celler på nær dem i A-kolonnen.
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:18 #8
Okay, skal formlen ligges noget bestemt sted?
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:19 #9
Erik: Men din form virker den ikke kun hvis den bliver smidt i celle A på forhånd?
10. december 2003 - 14:21 #10
Hvis du starte din liste i række 5 - indtaster du i A5 formlen =IF(B5<>"";row()-4;""). Dette vil give resultat 1.
Denne formel kan du kopiere nedad til hele A-kolonnen, og der vil blive vist et tal i A-kolonnen, efterhånden som du indtaster data i B-kolonnen.
Avatar billede bak Forsker
10. december 2003 - 14:23 #11
her er en lille makro du kan smide ind i arket eget kodemodul (højreklik på arkfanen og vælg "view code")
Hver gang der ændres i en cellen bliver formlen skrevet/genskrevet i i kolonne A

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count <> 1 Then Exit Sub
If Target.Row > 4 Then
  Cells(Target.Row, 1).FormulaR1C1 = "=ROW()-4"
End If
End Sub
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:32 #12
Det virker ok uden beskyttelse, men får denne fejl så snart jeg beskytter arket:

---

Run-time error '1004':
Our of stack space
10. december 2003 - 14:34 #13
>>Erik: Men din form virker den ikke kun hvis den bliver smidt i celle A på forhånd?

Jo, du indtaster den på forhånd, og kopierer til det ønskede område i A-kolonnen. Men resultatet bliver først synligt, når der indtastes i B-kolonnen.

Derudover har denne fremgangsmåde den fordel, at den også fungerer hvis projektmappen åbnes uden makroer.
10. december 2003 - 14:34 #14
Hvilken fremgangsmåde giver den fejl?
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:37 #15
Det virker ok uden beskyttelse, men så snart jeg beskytter kollonne A, så kommer fejlen. Det er ligemeget hvor jeg skriver i de andre celler.

Tror fejlen er at makroen prøvet at skrive til en beskyttet område
Avatar billede bak Forsker
10. december 2003 - 14:43 #16
hvis du bruger makroen er der ingen grund til at beskytte arket.
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:44 #17
ahhh... lol, self :P

Takker for hjælpen
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:45 #18
Bak; svar
Avatar billede kgp43 Nybegynder
10. december 2003 - 14:50 #19
mangler et svar fra dig :P
Avatar billede bak Forsker
10. december 2003 - 15:13 #20
ja, ja, kommer nu. jeg havde også lige noget arbejde, der skulle passes :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

IT-JOB

Netcompany A/S

Network Engineer

Riskpoint A/S (Riskpoint Solutions Limited)

Senior Developer

Politiets Efterretningstjeneste

Platform Engineer hos PET