30. marts 2004 - 12:21Der er
16 kommentarer og 1 løsning
Opg. i VBA_2
Jeg sidder helt fast i opg 2. Jeg tror det er noget med nogle løkker men jeg kan simpelthen ikke få det til at virke. hyperlinket til opgaven: http://www.sam.sdu.dk/undervis/85435.F04/obli1_2004/obli_2004.html Jeg håber at der er nogle der kan hjælpe mig, jeg har siddet med opgaven i 4 timer nu og er stadigvæk ikke kommet videre. Mvh. Jakor
Nå - vis den kode I er nået frem til, og konkretiser hvad det er I ikke kan finde ud af. Der er jo mange emner i spørgsmålet, hvad er det lige præcis der volder problemerne?
Nå - nu forstår jeg - det er jo det SAMFUNDSVIDENSKABELIGE fakultet som I alle 20 hører under - det forklarer at I allesammen sidder fuldstændigt fast..
(he he - sorry, kunne ikke lade være - jeg selv kommer naturligvis fra den naturvidenskabelige retning ;o)
Spøg til side - opgaven er ret præcist formuleret, så det skulle da være til at gå til. Men som sagt, fortæl præcis hvad der volder problemerne, og hvad problemerne er...
at få hver effekt omskrevet til infomationerne således at de kun optager en linie. Ellers giv dit bud på starten af opgave 2 og ...3 Vi ved vi skal anvende dobbelt løkker mm. men ikke i hele programmeringen.
***har ikke nogen lærer der kan hjælpe og vores instruktor er håbløs!
I celle A1 står der "hej" I celle A2 står der "med" I celle A3 står der "dig"
Det skal læses ind i en variabel (EEN linie) med navn strEnLinie
Det gøres således:
Dim i As Long Dim strEnLinie As String For i = 1 To 3 strEnLinie = strEnLinie & ActiveSheet.Cells(i, 1).Value Next i MsgBox "strEnLinie indeholder nu : " & strEnLinie
Nu står der "vidergående edb", så I har vel kendskab til VBA og løkker og variabler osv. på forhånd?
Skal I have mere hjælp - eller har I et bud på hvordan det skal løses nu?
Det er noget med at tjekke på regnr, og så længe det er uændret, så læser I data ind på samme linie. Når regnr ændres, starter I forfra - dermed to løkker...
Jo det med de to løkker havde jeg fundet ud af, det er mere hvordan man laver dem så det virker. Jeg vil prøve ad, men hvis du gider så må du gerne komme med en mere uddybende kode.
Det er altså helt logisk - gå 2 m tilbage og se på det igen. Så vil du kunne se, at følgende kan være en fornuftig løsning - og her bruger jeg faktisk kun EEN løkke. Men du kan sagtens lave en løsning med to løkker:
1. Start med øverste linie. 2. Læs regnr. 3. Sæt de følgende linier sammen til een linie, indtil der kommer en nyt regnr. 4. Fortsæt med dette til der ikke er flere rækker...
i pseudokode:
Do while i <= antalRækker læs regnr for række i læs regnr for række i + 1 if regnr for række i = regnr for række i + 1 strEnLinie = strEnLinie + øvrige data else strEnLinie = strEnLinie + øvrige data gem strEnLinie hvor den nu skal gemmes strEnLinie = "" end if i = i + 1 next i
Det er bare EN måde - find selv på en anden, hvis du ikke kan lide denne...
En af de andre 20 har lavet denne stump kode, men sidder nu fast. Er du sød at hjælpe mhv "range(???)", og men at få det til at stå umiddelbart efter hinanden i arket Database? Hvis denne kodestump er helt håbløs, kunne du så måske vise mig en anden metode? Sub Clean_Database()
Du må da bedst selv vide hvilken range du skal have fat i - det er trods alt dig der sidder med regnearket
Synes godt om
Ny brugerNybegynder
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.