Oprettet tor. d. 25. februar 2010 kl. 20:07:56

sjomka2001
sjomka2001 (5.330 point. Point ude: 150)

Indtastningsskabelon- VBA

HJÆÆÆÆÆLP
Jeg skal have lavet en indtastningsskabelon, som skal køres vha. en makro - og jeg kan simpelthen ikke gennemskue hvordan. Jeg har følgende der skal indtastes;
Nummer (tal)
Enhed (tal)
Delenhed (kan være alt muligt)
Delenheds karakter (kan være enten L eller T)
Delenhedens angivelse (tal f.eks. 2,00)
Delenhedens faktiske stand (tal f.eks. 2,00)
Jeg skulle gerne kunne lave en form for "indtastningsskabelon", hvor man, når man kører makroen, får en besked om at indtaste nummer, enhed, delenhed osv. Når dette er indtastet, skal man blive spurgt om man vil fortsætte. Hvis man svarer Ja, kommer man automatisk til næste række, hvor man gentager det hele. Det vil være perfekt, hvis indtastningen starter i A2.

Skrevet tor. d. 25. februar 2010 kl. 20:14:13| #1

Du skal have lavet dig en userform - det er lidt svært at beskrive her, men du kan se, hvordan man opretter sådan én her
http://www.it-fjernundervisning.dk/ (...)

Skrevet fre. d. 26. februar 2010 kl. 13:46:26| #2

sjomka2001
sjomka2001 (5.330 point)
Det var nu ikke meningen det skulle være så avanceret. Jeg forestiller mig et ark, hvor man sætter curseren i A2 -> vælger markroen og derefter indtaster det man skal. Når man er færdig med at indtaste data i alle inputbokse, bliver man spurgt om man vil fortsætte -> hvis ja, starter det hele forfra igen men denne gang i celle B2 osv. osv. Hvis man svarer nej til at fortsætte stopper makroen bare. Håber det er lidt mere forståeligt?

Skrevet lør. d. 27. februar 2010 kl. 11:32:51| #3

Denne er ikke så avanceret ;-)

Vil du styre/begræse input, er det userform, som er forslået, du skal ud i.

Sub Indtastningsskabelon()
Dim iResultat1
Dim iResultat2
Dim iResultat3
Dim iResultat4
Dim iResultat5
Dim iSvar

Start:
If Range("A2").Value = "" Then
    Range("A2").Activate
Else
    Range("A2").CurrentRegion.Select
    ActiveCell.Offset(Selection.Rows.Count, 0).Activate
End If

Nummer:
    iResultat1 = InputBox("Indtast et Nummer", "Nummer")
    If iResultat1 = vbChancel Then Exit Sub
   
Enhed:
    iResultat2 = InputBox("Indtast en Enhed", "Enhed")
    If iResultat2 = vbChancel Then Exit Sub

Delenhed:
    iResultat3 = InputBox("Indtast en Delenhed", "Delenhed")
    If iResultat3 = vbChancel Then Exit Sub

DelenhedsKarakter:
    iResultat4 = InputBox("Indtast Delenheds karakter", "Delenheds karakter")
    If iResultat4 = vbChancel Then Exit Sub

DelenhedensAngivelse:
    iResultat5 = InputBox("Indtast Delenhedens angivelse", "Delenhedens angivelse")
    If iResultat5 = vbChancel Then Exit Sub

With ActiveCell
    .Offset(0, 0).Value = iResultat1
    .Offset(0, 1).Value = iResultat2
    .Offset(0, 2).Value = iResultat3
    .Offset(0, 3).Value = iResultat4
    .Offset(0, 4).Value = iResultat5
    End With
   
    iSvar = MsgBox("Vil du fortsætte?", vbYesNo)
    If iSvar = vbYes Then GoTo Start
   
End Sub

Skrevet tir. d. 02. marts 2010 kl. 19:23:15| #4

sjomka2001
sjomka2001 (5.330 point)
Tak til store-morten. Det virker perfekt. Jeg vil meget gerne give dig point, men vil lige høre om du kan hjælpe mig med en enkelt ting mere? Hvordan får jeg kodet vba'en sådan, at der foretages en automatisk beregning i f.eks. resultat 6 af delenhedens karakter minus delenhedens angivelse?

Er det forøvrigt muligt at sætte faste "absolutter" på en given indtastning? Hvis jeg gerne vil have at enhed SKAL tastes med 6 cifre efterfulgt af bindestreg efterfulgt af 2 cifre (f.eks. 123456-78)?

Skrevet tir. d. 02. marts 2010 kl. 23:14:07| #5

Velbekomme.

Det er desvære ikke så nemt/muligt at validere på den indbyggede inputbox funktion.

Skrevet tir. d. 02. marts 2010 kl. 23:18:21| #6

"automatisk beregning i f.eks. resultat 6"
Den forstår jeg ikke?

Kikker lige lidt på validering.

Skrevet tor. d. 04. marts 2010 kl. 18:12:50| #7

sjomka2001
sjomka2001 (5.330 point)
Jeg har modtaget megen god og hjælp til denne. Men jeg har et par tillægsspørgsmål!


Dato:
    iResultat1 = InputBox("Indtast dato", "Dato")
    If iResultat1 = vbChancel Then Exit Sub

Hvordan får jeg, via VBA, formateret en dato til at skulle være dd-mm-yyyy. Og hvordan får jeg brugeren gjort opmærksom på, hvis vedkommende har indtastet forkert format, at vedkommende skal indtaste det som dd-mm-yyyy?

Skrevet tor. d. 04. marts 2010 kl. 21:27:06| #8

Prøv at sende et regneark til mig.
Adr. under frofil.

Skrevet fre. d. 12. marts 2010 kl. 17:40:53| #9

sjomka2001
sjomka2001 (5.330 point)
Hej Morten. Du får point for denne. Smid et svar!

Og PS: Hvordan er det nu lige at man giver point?

Skrevet lør. d. 13. marts 2010 kl. 00:56:16| #10

Nummer #5 er et 'Svar'

Når der er kommet et svar som du kan bruge, så klikker du ud for selve svaret i boksen "Acceptér dette svar". Derefter accepterer du svaret i den boks som dukker frem.

Skrevet man. d. 15. marts 2010 kl. 19:07:53| #11


Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   

   

Seneste spørgsmål

Svar til: X i en celle giver et andet resultat i anden...

Oprettet den 11. februar 2012 kl. 14.15
ashurra giver 100 point for svar | Giv et svar »

Hjælp til formel rente/antal dage

Oprettet den 11. februar 2012 kl. 12.14
petert giver 30 point for svar | Giv et svar »

Problemløser, "HVIS" formel, eller andet til optimering?

Oprettet den 11. februar 2012 kl. 02.36
Olav123 giver 150 point for svar | Giv et svar »

Seneste guides

Installer win 7
Den gode bruger


   




Tips & Tricks fra PC World

Teaser billede

Her er fem sjove danske websider du skal kende

Trænger dine lattermuskler til en omgang fitness på dansk? Vi viser vej til fem websider fyldt med humor og vanvittig satire.


Anmeldelser fra PC World

Teaser billede

Test: Denne super-tablet er iPads hårdeste konkurrent

Eee Pad Transformer Prime er frygtindgydende med sin quadcore processor og evne til at trylle sig om til bærbar. Apple bør kigge i bagspejlet, for Asus' tablet-pc kommer buldrende - og gør det...


Seneste blogindlæg

Teaser billede

Tvangslukke spørgsmål: Hvad er den bedste løsning?

Hej Vi har mange åbne spørgsmål på Eksperten. Vi ville gerne tvangslukke dem - så et spørgsmål efter f.eks. 6 måneder lukkes. Men der er et par uklarheder som ville være gode at få lidt input til:...


Nyheder fra PC World

Teaser billede

Nu kan du snart hente Windows 8

Den nye offentlige betaversion af Windows 8 er klar i denne måned.


Nyheder fra Computerworld

Teaser billede

Måske snart slut med Androids helt store problem

Android-platformen har længe været plaget af et særligt problem. Men måske er problemet nu ved at være elimineret.


Kurser
Samarbejdspartnere

Udgiver · © 2012 IDG Danmark A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger