2017-01-29 15 views
0

単語の位置を特定するコードをVisual Basic内で生成する必要があります。たとえば、私の文章は「This is my Visual Basic Project」と書くことができます。ユーザーが単語「my」を入力した場合、出力には「あなたの単語は3番目の位置にあります」と表示される別のフォームが開きます。文字列を使用する必要があり、それを配列に変換します。単語と文を特定する

このプロジェクトのために私のデザインは非常に簡単です:

テキストを入力するためにあなたのユーザーのためのTextBox
「確認」Button
「終了」Button。 (ボタンがクリックされたことを確認すると)出力を含むFormLabel(与える答えが)があるとButton「OK」でまた

は、メインプログラムに戻ります戻ります。最後に、その単語が文の中にない場合は、エラーメッセージが表示されます。プログラムは大文字と小文字を区別する必要があります

私はプログラミングにかなり新しいですし、どんな助けも愛しています。 ButtonsTextBoxのコードとプログラム全体を返すことができれば幸いです。

本当にしてください。どうもありがとう!!

+0

あなたは自分でこれを実装しようとする必要があります...私はキーワードを強調表示さえ... VSデザイナーの_drag-and-drop_正しい場所に... – zx485

+0

'Instrは' Instr( "これはメイン文字列"、 "main") 'を使用します' 9' – newguy

+0

@ zx485ありがとう、これはVisual Basicの私の最初のプロジェクトですほとんど知識がありません。私のコードはhttps://msdn.microsoft.com/en-us/library/c7cdd1d1(v=vs.90).aspxのものと似ていますか? –

答えて

1

プラットフォームを指定していないため、この回答はOffice開発シナリオ用です。

ここではMicrosoft Wordオブジェクトモデルが便利です。 Wordsコレクションをループして、Sentenceオブジェクトをループすることができます。一致するまでWordsコレクションをループします。 Microsoft Wordで動作するようにいくつかのコード

Sub SetUpSentence() 

    Dim currentSelection As Word.Selection 
    Set currentSelection = Application.Selection 

    Application.Options.Overtype = False 

    currentSelection.TypeText Text:="This is some text" 
End Sub 

Sub TestFindWord() 
    Debug.Print FindWord("some") 
End Sub 

Function FindWord(ByVal sWord As String) As Long 

    Dim oWords As Word.Words 
    Set oWords = ActiveDocument.Words 

    Dim lIndex As Long 
    lIndex = 0 
    Dim oRange As Word.Range 
    For Each oRange In oWords 
     lIndex = lIndex + 1 
     If Trim(oRange.Text) = sWord Then 
      FindWord = lIndex 
      Exit Function 
     End If 
    Next oRange 

End Function 
関連する問題