Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8626 / 13644 ツリー ←次へ | 前へ→

【32163】使用状況 悩みまくり・・・ 05/12/7(水) 19:43 質問[未読]
【32166】Re:使用状況 kobasan 05/12/7(水) 21:18 回答[未読]
【32168】Re:使用状況 悩みまくり・・・ 05/12/8(木) 0:28 発言[未読]
【32171】Re:使用状況 やっちん 05/12/8(木) 8:06 回答[未読]
【32173】Re:使用状況 悩みまくり 05/12/8(木) 9:32 発言[未読]
【32182】Re:使用状況 やっちん 05/12/8(木) 12:45 発言[未読]
【32186】Re:使用状況 kobasan 05/12/8(木) 16:04 発言[未読]
【32209】Re:使用状況 悩みまくり 05/12/9(金) 11:06 発言[未読]
【32211】Re:使用状況 やっちん 05/12/9(金) 11:45 発言[未読]
【32212】Re:使用状況 Jaka 05/12/9(金) 11:45 発言[未読]
【32214】Re:使用状況 悩みまくり 05/12/9(金) 13:59 発言[未読]
【32215】Re:使用状況 wad 05/12/9(金) 14:17 発言[未読]
【32217】Re:使用状況 Jaka 05/12/9(金) 14:39 発言[未読]
【32218】Re:使用状況 悩みまくり 05/12/9(金) 15:07 お礼[未読]

【32163】使用状況
質問  悩みまくり・・・  - 05/12/7(水) 19:43 -

引用なし
パスワード
   カレンダーから日付を選びコンボボックス1に表示し、コンボボックス2にはどの車(1〜11台あります)を選んだか表示し、誰がどこに使うかをコンボボックス3に表示しています。12/13.車のセルにコンボボックス3の内容を書き込むようにするにはどうすればいいですか?
 列    A  B  C  D  E  F  G
行        1.車 2.車 3.車 4.車 ・  ・
1     12/1
2     12/2
3     12/3
4      ・
5      ・
・     ・

【32166】Re:使用状況
回答  kobasan E-MAIL  - 05/12/7(水) 21:18 -

引用なし
パスワード
   今晩は。
Userform1にコンボボックスを3つ作って、下記コードを貼り付けて、
試してみてください。

Private Sub UserForm_Initialize()
  Me.ComboBox1.List = Array("12/1", "12/2", "12/3", "12/4", "12/5", "12/6")
  Me.ComboBox2.List = Array("1.車", "2.車", "3.車", "4.車")
  Me.ComboBox3.List = Array("z1", "z2", "z3", "z4", "z5")
End Sub

Private Sub CommandButton1_Click()
  cmb1 = Me.ComboBox1.Value
  cmb2 = Me.ComboBox2.Value
  cmb3 = Me.ComboBox3.Value
  行 = Application.Match(cmb1, Range("A1:A10"), 0)
  列 = Application.Match(cmb2, Range("A1:F1"), 0)
  Cells(行, 列).Value = cmb3
End Sub


>カレンダーから日付を選びコンボボックス1に表示し、コンボボックス2にはどの車(1〜11台あります)を選んだか表示し、誰がどこに使うかをコンボボックス3に表示しています。12/13.車のセルにコンボボックス3の内容を書き込むようにするにはどうすればいいですか?
> 列    A  B  C  D  E  F  G
>行        1.車 2.車 3.車 4.車 ・  ・
>1     12/1
>2     12/2
>3     12/3
>4      ・
>5      ・
>・     ・

【32168】Re:使用状況
発言  悩みまくり・・・  - 05/12/8(木) 0:28 -

引用なし
パスワード
   すみません。コンボボックス書いてしまいましたが、テキストボックスの間違いです。テキストブックに入力された日付と車のセルにテキストボックス3の内容が記入できるようにしたいのですが・・・それと最後に決定みたいなボタンを押すと記入できるよおねがいします

【32171】Re:使用状況
回答  やっちん  - 05/12/8(木) 8:06 -

引用なし
パスワード
   ▼悩みまくり・・・ さん:
こんにちは。
>すみません。コンボボックス書いてしまいましたが、テキストボックスの間違いです。
>テキストブックに入力された日付と車のセルにテキストボックス3の内容が記入できる
>ようにしたいのですが・・・
Private Sub UserForm_Initialize()を全て削除して
Private Sub CommandButton1_Click()の中の"ComboBox"を"TextBox"に
置き換えるだけでできますよ。

>それと最後に決定みたいなボタンを押すと記入できるよおねがいします
元からそういう仕組みになっています。
"CommandButton1_Click"は"CommandButton1"がクリックされた時に
実行される処理です。

【32173】Re:使用状況
発言  悩みまくり  - 05/12/8(木) 9:32 -

引用なし
パスワード
   すみません。試しましたが、型が一致しませんと表示されるのですが、これはワークシートの形がわるいのですが?
Cells(行, 列).Value = cmb3 ←ここが黄色くなるのですが?
 ↑
ここのいみは?これは行と列の基準を作っているのですか?
初心者なのですみません。  

【32182】Re:使用状況
発言  やっちん  - 05/12/8(木) 12:45 -

引用なし
パスワード
   ▼悩みまくり さん:
>Cells(行, 列).Value = cmb3 ←ここが黄色くなるのですが?
> ↑
>ここのいみは?これは行と列の基準を作っているのですか?
CELLSに関してはHELPを見てください。

エラーになるということは
>  行 = Application.Match(cmb1, Range("A1:A10"), 0)
>  列 = Application.Match(cmb2, Range("A1:F1"), 0)
のどちらか一方でも見つからなかったということです。
テキストボックス1と同じ内容がA1からA10にありますか?
テキストボックス2と同じ内容がA1からF1にありますか?

【32186】Re:使用状況
発言  kobasan  - 05/12/8(木) 16:04 -

引用なし
パスワード
   皆さん 今日は。

Private Sub CommandButton1_Click()
  行 = Application.Match(Me.TextBox1.Text, Range("A1:A10"), 0)
  列 = Application.Match(Me.TextBox2.Text, Range("A1:F1"), 0)
  Cells(行, 列).Value = Me.TextBox3.Value
End Sub

これで試してみてください。
それとA列の書式を文字列に指定しておくとより確実になると思います。


>>Cells(行, 列).Value = cmb3 ←ここが黄色くなるのですが?
>> ↑
>>ここのいみは?これは行と列の基準を作っているのですか?
>CELLSに関してはHELPを見てください。
>
>エラーになるということは
>>  行 = Application.Match(cmb1, Range("A1:A10"), 0)
>>  列 = Application.Match(cmb2, Range("A1:F1"), 0)
>のどちらか一方でも見つからなかったということです。
>テキストボックス1と同じ内容がA1からA10にありますか?
>テキストボックス2と同じ内容がA1からF1にありますか?

【32209】Re:使用状況
発言  悩みまくり  - 05/12/9(金) 11:06 -

引用なし
パスワード
   またもや同じエラーが???型が違いますと・・・指定した範囲に同じものがあればいいのですよねぇ〜テキストとワークブックのセルの値がちがうのですかねぇ〜それとワークブックのシート1にあるので、ちょっと書き換えてみると、Globalオブジェクトエラーとでました。これはなにですか?

【32211】Re:使用状況
発言  やっちん  - 05/12/9(金) 11:45 -

引用なし
パスワード
   ▼悩みまくり さん:
>またもや同じエラーが???型が違いますと・・・
予想では日付が文字列ではないのでしょう。
日付の入っているセルの書式を確認してください。
見た目には同じでも日付としての値とテキストボックスの"12/1"の文字列は
同じものではありません。

>それとワークブックのシート1にあるので、ちょっと書き換えてみると、Globalオブジェクトエラーとでました。これはなにですか?
コードを提示してみてください。

【32212】Re:使用状況
発言  Jaka  - 05/12/9(金) 11:45 -

引用なし
パスワード
   こんにちは。
よく読まないで載せちゃったので消しましたが、
A列の 12/1 は、文字列ですか?
日付で表示形式を変えているだけだと思いますが、これが解らないと何も出来ません。

【32214】Re:使用状況
発言  悩みまくり  - 05/12/9(金) 13:59 -

引用なし
パスワード
   文字列を確認したのですが・・・同じエラーがでます???
Cells(行, 列).Value = TextBox3ここが黄色くなります???
行 = Application.Match(cmb1, Range("A1:A10"), 0)
↑           ↑     ↑
これは?        これは?  ここの前にsheet1といれたのですが・・・
行と列のA1が重なっているのは範囲していだからいいのですか?

【32215】Re:使用状況
発言  wad  - 05/12/9(金) 14:17 -

引用なし
パスワード
   みなさん こんにちは

やっちんさんので動きましたが・・・
Sheet1は全て文字列に設定しています。

Private Sub CommandButton1_Click()

Dim myG As Long
Dim myR As Long

With Worksheets("Sheet1")
  myG = Application.Match(Me.TextBox1.Text, .Range("A1:A10"), 0)
  myR = Application.Match(Me.TextBox2.Text, .Range("A1:F1"), 0)
  .Cells(myG, myR).Value = TextBox3.Text
End With

End Sub

【32217】Re:使用状況
発言  Jaka  - 05/12/9(金) 14:39 -

引用なし
パスワード
   こんな風にエラー処理をしてください。

Dim 行 as variant,列 as variant
行 = Application.Match(TextBox1.Value, Range("A1:A10"), 0)
列 = Application.Match(TextBox2.Value, Range("A1:F1"), 0)
If Not (IsError(行) Or IsError(列)) Then
  MsgBox "OK"
Else
  MsgBox "NG どちらかがない。"
End If

【32218】Re:使用状況
お礼  悩みまくり  - 05/12/9(金) 15:07 -

引用なし
パスワード
   すみません。出来ました!!列のほうを数字だけにしていたのでダメだったのでしょうか?文字に変えると出来ました。初心者でどうもすみませんでした。
みなさんありがとうございます。

8626 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free