• 締切済み

EXCELで入金処理を!(出直してみました)

受注No. - 枝番 現場名  入金日 A12300 - 01 佐藤様  07/05/05 A12500 - 01 田中様       A12300 - 02 佐藤様       D14600 - 01 木村様  07/05/03 A14700 - 01 松本様         (excelワークシート) 以上のようなデータベースから No.がA12300かつ枝番が02を抽出し、"佐藤様"を呼び出す方法を教えてください。このデータベースは次々と追加されていきます。 excelで作ってます。No.(No)と枝番(eda)をそれぞれユーザーフォームのテキストボックスに入力し検索ボタン(Sarch)を押してサーチし、抽出された値をユーザーフォームのラベル(genba)に表示し、また、入金日(Hiduke)をテキストボックスに入力して登録ボタン(Touroku)を押すと入力された日付がワークシートの該当するセルに反映されるようにしたいのですが。 説明が下手ですみません。 自分なりに頑張って書きましたので宜しくお願いします。

みんなの回答

  • AlexSuns
  • ベストアンサー率67% (78/115)
回答No.2

#1さんのことですべてが解決しますが、参考までにVBAのコードを... ※結構適当書いたので、使用するなら確認しながら使ってくださいw Option Explicit Private Sub Search_Click()      Dim strNo As String, strEda As String   Dim searchString As String      strNo = Me.No.Text   strEda = Me.Eda.Text   searchString = strNo & "-" & strEda      Dim searchSheet As Excel.Worksheet   Dim searchRange As Excel.Range   Set searchSheet = Worksheets("Sheet2")   Set searchRange = searchSheet.Range("A:A")      Dim resultRange As Excel.Range   Set resultRange = searchRange.Find(searchString, LookIn:=xlValues)      If Not resultRange Is Nothing Then     searchSheet.Cells(resultRange.Row, resultRange.Column).Activate     Me.Genba.Caption = searchSheet.Cells(resultRange.Row, resultRange.Column + 1).Text   End If      Set resultRange = Nothing   Set searchRange = Nothing   Set searchSheet = Nothing    End Sub Private Sub Touroku_Click()      If Not IsDate(Me.Hiduke) Then     MsgBox "入金日を入力してください( ゜д゜)", vbExclamation     Me.Hiduke.SetFocus     Exit Sub   End If      Dim tourokuDate As Date   tourokuDate = CDate(Me.Hiduke.Text)      Dim searchSheet As Excel.Worksheet   Set searchSheet = Worksheets("Sheet2")      searchSheet.Cells(ActiveCell.Row, ActiveCell.Column + 2).Value = tourokuDate      Set searchSheet = Nothing    End Sub

  • vista2446
  • ベストアンサー率46% (131/279)
回答No.1

既存の表に「入金日」を簡単に入力したい、ということでしょうか? ご質問文にユーザーフォームとありますので、マクロを使用されていると思いますが、「データ」の「フォーム」から簡単に検索・入力ができます。

関連するQ&A