Avatar billede sune56 Nybegynder
11. juni 2007 - 20:36 Der er 6 kommentarer og
1 løsning

Excel makro: Syntax fejl

Nu er jeg helt grøn i Visual Basic. Jeg skal lave en makro som kan tælle hvor mange gange X forekommer i en en kolonne, samtidigt med at Y forekommer i en anden kolonne. X og Y er begge strenge.

Jeg har skrevet følgende i Visual Basic:

Function FormPlay(X As String, Y As String) As Integer
Dim sum As Integer
Dim i As Integer
For i = 3 To 75 Step 1
  If X = Cells i, "C" And Y = Cells i, "G" Then sum = sum + 1
  End If
Next i
FormPlay = sum
End Function


Når jeg kører functionen i Excel, får jeg følgende melding i VB: Compile error:Syntax error!

Hvordan får jeg den til at virke?

Hilsen Sune
Avatar billede sjh Nybegynder
11. juni 2007 - 20:41 #1
er det ikke bare et par "()" der mangler ?

If X = Cells(i, "C") And Y = Cells(i, "G") Then sum = sum + 1
Avatar billede sjh Nybegynder
11. juni 2007 - 20:51 #2
Hvis den skal køre uden "End If" så skal du fjerne den..

If X = Cells(i, "C") And Y = Cells(i, "G") Then sum = sum + 1
' End If

ellers er det sådan:

If X = Cells(i, "C") And Y = Cells(i, "G") Then
sum = sum + 1
End If
Avatar billede sune56 Nybegynder
11. juni 2007 - 21:04 #3
Med følgende:

Function FormPlay(X As String, Y As String) As Integer
Dim sum As Integer
Dim i As Integer
  For i = 3 To 75 Step 1
  If X = Cells(i, "E") And Y = Cells(i, "G") Then
  sum = sum + 1
  End If
    Next i
FormPlay = sum
End Function

Får jeg ingen fejlmeldinger. Men til gengæld tæller den 0, når jeg kører den i Excel med følgende input: FormPlay ("Flex left"; "Iso")
hvor den burde tælle 1
Avatar billede sjh Nybegynder
11. juni 2007 - 21:43 #4
Ja nu har jeg ikke selv Excel installeret.. så jeg kan ikke lige se hvordan den skal virke.. desværre..
Avatar billede kabbak Professor
11. juni 2007 - 21:50 #5
virker fint her.
Avatar billede sune56 Nybegynder
11. juni 2007 - 22:03 #6
Ok... jeg tror at jeg har fundet fejlen... Hvis sjh svarer tilbage, får du pointene... Kan én af Jer iøvrigt fortælle mig hvordan jeg refererer til et andet ark i Scriptet (Vil gerne lave udregningerne på et seperat ark)?

Hilsen Sune
Avatar billede sjh Nybegynder
12. juni 2007 - 08:13 #7
Jeg ved det ikke.. men her er da et svar..
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
Kurser inden for grundlæggende programmering

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