Excel VBA質問箱 IV

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

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


9234 / 13646 ツリー ←次へ | 前へ→

【28556】どうしてもわかりません tbtk 05/9/9(金) 10:58 質問[未読]
【28557】Re:どうしてもわかりません ちくたく 05/9/9(金) 11:02 発言[未読]
【28559】Re:どうしてもわかりません tbtk 05/9/9(金) 11:07 質問[未読]
【28560】Re:どうしてもわかりません Statis 05/9/9(金) 11:18 回答[未読]
【28565】Re:どうしてもわかりません tbtk 05/9/9(金) 11:37 お礼[未読]
【28561】Re:UserFormのTextBoxの値がSheet2に表示で... かみちゃん 05/9/9(金) 11:20 発言[未読]
【28563】Re:UserFormのTextBoxの値がSheet2に表示で... tbtk 05/9/9(金) 11:27 質問[未読]
【28564】Re:UserFormのTextBoxの値がSheet2に表示で... かみちゃん 05/9/9(金) 11:33 発言[未読]
【28562】USerFormのTextBoxの値をSheetに表示する? ちくたく 05/9/9(金) 11:20 発言[未読]
【28558】Re:UserFormのTextBoxの値がSheet2に表示で... かみちゃん 05/9/9(金) 11:03 発言[未読]

【28556】どうしてもわかりません
質問  tbtk  - 05/9/9(金) 10:58 -

引用なし
パスワード
   ユーザーフォームのテキストボックスに打ち込んだデータをシート1とシート2に
表示させたいのですがシート1はうまくいくのですがシート2のほうにはどうやっても出来ないです。誰か教えていただけるとありがたいです。よろしくお願いします。

【28557】Re:どうしてもわかりません
発言  ちくたく  - 05/9/9(金) 11:02 -

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

普通はできますので、コードを呈示して頂けますか。
どんな識者の方であれ、この問題については、
コードを呈示して頂かないと解決できないと思います。

>ユーザーフォームのテキストボックスに打ち込んだデータをシート1とシート2に
>表示させたいのですがシート1はうまくいくのですがシート2のほうにはどうやっても出来ないです。誰か教えていただけるとありがたいです。よろしくお願いします。

【28558】Re:UserFormのTextBoxの値がSheet2に表示...
発言  かみちゃん  - 05/9/9(金) 11:03 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>ユーザーフォームのテキストボックスに打ち込んだデータをシート1とシート2に
>表示させたいのですがシート1はうまくいくのですがシート2のほうにはどうやっても出来ない

どのようなコードで、どのようにうまくいかないのか、具体的に説明していただけますか?

【28559】Re:どうしてもわかりません
質問  tbtk  - 05/9/9(金) 11:07 -

引用なし
パスワード
   ▼ちくたく さん:
>お返事ありがとうございます
If msg1 = vbYes Then
        cnta = WorksheetFunction.CountA(Range("c1:az1"))
        cnta = cnta + 3
        
        Cells(1, cnta) = text1
        Cells(2, cnta) = text2
        
        
        Unload addform
      
    Else
        .TextBox1 = ""
        .TextBox2 = ""
    End If
  End With
今は上記のコードになっています。

【28560】Re:どうしてもわかりません
回答  Statis  - 05/9/9(金) 11:18 -

引用なし
パスワード
   ▼tbtk さん:こんにちは
>▼ちくたく さん:
>>お返事ありがとうございます
>If msg1 = vbYes Then
>        cnta = WorksheetFunction.CountA(Range("c1:az1"))
>        cnta = cnta + 3
>        
>        Cells(1, cnta) = text1
>        Cells(2, cnta) = text2
>        
>        
>        Unload addform
>      
>    Else
>        .TextBox1 = ""
>        .TextBox2 = ""
>    End If
>  End With
>今は上記のコードになっています。


シート名の指定が無いためアクティブシートに記載されるのでは

cnta = WorksheetFunction.CountA(Worksheets("該当シート名").Range("c1:az1"))
With Worksheets("Sheet1")
   .Cells(1, cnta).Value = text1
   .Cells(2, cnta).Value = text2
End With
With Worksheets("Sheet2")
   .Cells(1, cnta).Value = text1
   .Cells(2, cnta).Value = text2
End With

【28561】Re:UserFormのTextBoxの値がSheet2に表示...
発言  かみちゃん  - 05/9/9(金) 11:20 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> cnta = WorksheetFunction.CountA(Range("c1:az1"))
> cnta = cnta + 3
> Cells(1, cnta) = text1
> Cells(2, cnta) = text2

text1とtext2がテキストボックスの値ということでいいでしょうか?
コードが省略されていると、検証もできないので、推測でしか、アドバイスができない場合が多いです。

それで、今回の場合、コードを実行する前に、アクティブになっているシートに対してでないと処理できないはずです。
つまり、Sheet2に表示できないのは、Sheet2がアクティブになっていないからだと
思われます。

【28562】USerFormのTextBoxの値をSheetに表示する...
発言  ちくたく  - 05/9/9(金) 11:20 -

引用なし
パスワード
   tbtkさん、かみちゃんさん。
こんにちは。

最初の質問に対して、以下のコードでは、
どこがおかしいのか判断できません。
というわけで、お手間おかけしますが、

1. 現在の問題点をもう少し具体的に教えてください。
  そして、どういう風な動作にしたいかを記述してください。

2. コードは必要な部分を呈示してください。
  少なくとも、End Withを呈示するなら、With xxxも呈示してください。
  text1とかもなんなのか判断できません。

よろしくお願い致します。

>>お返事ありがとうございます
>If msg1 = vbYes Then
>        cnta = WorksheetFunction.CountA(Range("c1:az1"))
>        cnta = cnta + 3
>        
>        Cells(1, cnta) = text1
>        Cells(2, cnta) = text2
>        
>        
>        Unload addform
>      
>    Else
>        .TextBox1 = ""
>        .TextBox2 = ""
>    End If
>  End With
>今は上記のコードになっています。

【28563】Re:UserFormのTextBoxの値がSheet2に表示...
質問  tbtk  - 05/9/9(金) 11:27 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
はい、その推測道理なのですがユーザーフォームへの入力はシート1にコマンドボタンを
作って、そこから先ほどのコードが記述してあるモジュールまで行くのですが、それだとどうしてもシート1にしか表示ができないという感じです。
色々、試したのですがどうも出来ません。
私的には入力するとシート1とシート2のセルに入力がされるという形にしたいです。

【28564】Re:UserFormのTextBoxの値がSheet2に表示...
発言  かみちゃん  - 05/9/9(金) 11:33 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>それだとどうしてもシート1にしか表示ができないという感じです。

それは、さきほども書きましたが、Sheet1がアクティブになっているからではないでしょうか?
Sheet2をアクティブにしておけば、うまくいくと思います。

>私的には入力するとシート1とシート2のセルに入力がされるという形にしたいです。

cnta = WorksheetFunction.CountA(Range("c1:az1"))
これがどこのシートから取得するのかわかりませんが、
Statisさんのコメントが参考になりませんか?

【28565】Re:どうしてもわかりません
お礼  tbtk  - 05/9/9(金) 11:37 -

引用なし
パスワード
   すいません、Statisさん ちくたくさん かみちゃんさん
Statisさんの回答で無事解決しました。本当にありがとうございました。
お手数おかけしました。
また、機会があればよろしくお願いします。
▼Statis さん:
>▼tbtk さん:こんにちは
>>▼ちくたく さん:
>>>お返事ありがとうございます
>>If msg1 = vbYes Then
>>        cnta = WorksheetFunction.CountA(Range("c1:az1"))
>>        cnta = cnta + 3
>>        
>>        Cells(1, cnta) = text1
>>        Cells(2, cnta) = text2
>>        
>>        
>>        Unload addform
>>      
>>    Else
>>        .TextBox1 = ""
>>        .TextBox2 = ""
>>    End If
>>  End With
>>今は上記のコードになっています。
>
>
>シート名の指定が無いためアクティブシートに記載されるのでは
>
>cnta = WorksheetFunction.CountA(Worksheets("該当シート名").Range("c1:az1"))
>With Worksheets("Sheet1")
>   .Cells(1, cnta).Value = text1
>   .Cells(2, cnta).Value = text2
>End With
>With Worksheets("Sheet2")
>   .Cells(1, cnta).Value = text1
>   .Cells(2, cnta).Value = text2
>End With

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