2017-04-07 15 views
0

私はメインにサブを呼び出そうとしており、基本的にこのサブと別の列を埋めています。しかし、私は構文エラーを取得しています。どうしてこれなの?2つのパラメータが定義されたサブを呼び出す

Option Explicit 

Private Sub Form_Load() 
    Dim mystring As String, i As Long, asciinum As String, f As Long 

    With Worksheets("sheet1") 
     For f = 2 To .Cells(.Rows.Count, "I").End(xlUp).Row 
      mystring = .Cells(f, "I").Value2 
      prueba1 (mystring, f) 
     Next f 
    End With 
End Sub 

Sub prueba1(mystring, index As Long) 
Dim i As Long, asciinum As String 

      For i = 1 To Len(mystring) 
       asciinum = LCase(Mid(mystring, i, 1)) 
       If asciinum Like "[aeiou]" Then 
        .Cells(index, "M") = "First Vowel " + asciinum 
        Exit For 
       End If 
      Next i 
End Sub 
+1

'prueba1なければならない(のMyString、F)' 'prueba1のMyString、F'と' prueba1(のMyString、限りインデックス) '' prueba1(文字列としてのMyString、インデックスであるべきであるべきです長い) ' – Jeeped

+0

ハハおかげで男!あなたはどこにでもいる –

+0

With ... With prueba1で親ワークシートはありませんが、あなたは 'Cells'の代わりに' .Cells'を使用しています。 – Jeeped

答えて

2
  • prueba1 (mystring, f) prueba1にで終わる... prueba1(mystring AS STRING, index As Long)
  • で親のワークシートがありませんする必要がありますが、あなたは.Cells代わりのCellsを使用しているprueba1 mystring, f
  • prueba1(mystring, index As Long)でなければなりません。最低でも、それがWorksheets("sheet1").Cells(index, "M") = "First Vowel " + asciinum
+1

私はOPがなぜ暗黙の変種として 'mystring'を宣言したのか、明示的な' Long'として 'index'を宣言したのかと思います。しかし、私。 –

+0

笑ええ、私はすべてを宣言する必要があります...しかし、すべてのありがとう! –

関連する問題