アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつもお世話になります。

コードで、スピンボタンの値をC4セルに入れて変化させています。

下記やりたいことに対して、コードにどのような編集を加えればいいかアドバイスをお願いいたします。

◆やりたいこと
C4セルに任意の数字を手入力⇒enterボタンを押した後に、スピンボタンの値をその数字がら追従して変化させたい。
たとえば、スピンボタンで11⇒12⇒13と変化させているところで、C4セルに77と入力した後にスピンボタンを押すと、78⇒79⇒80と変化できるようにさせたいです。

'◆スピンボタンコード
Private Sub SpinButton1_Change()
Range("C4").Value = SpinButton1.Value
SpinButton1.Min = 1
End Sub

A 回答 (2件)

C4の変化を捉えるのは


Private Sub Worksheet_Change(ByVal Target As Range)
End Sub
と思うが、スピンBの▼などクリックでもC4(とLinkedCellにしていると)が変わるので、やりにくい。
仕組みに無理があるのでは。
ーー
しかしMinをWorksheets("Sheet1").SpinButton1.Min を決めるセルをC4とは別のセルに設定するのもわずらわしいよね。
テキストボックスを1つ貼り付けるか。
Private Sub TextBox1_LostFocus()
Worksheets("Sheet1").SpinButton1.Min = Val(Worksheets("Sheet1").TextBox1.Text)
Worksheets("Sheet1").Range("C4") = Val(Worksheets("Sheet1").TextBox1.Text)
End Sub
C4(値入力を考えているセル)が普通は変化していくのではないのかな。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。まだご提案頂いた内容について、試しておりませんが、無理があるという事が分かって良かったです。
これならば、初めから、スピンボタンを使わずにC4セルの数値を変える▲▼のコマンドボタンを考えればいいのかな。とも思いました。
どんなコードを作ればいいのか、イメージ出来ませんが、、、

お礼日時:2011/07/21 12:09

手順:


1.現在の「スピンボタンのコード」を消して白紙に戻します
2.デザインモードでスピンボタンを右クリックしてプロパティを表示します
 LinkedCellに Sheet1!C4 と記入
 Minに 1 を記入
3.デザインモードを解除して使います

スピンボタンをアップダウンすれば,C4の値が変化します
C4に任意の値を記入すれば,その値からまたアップダウンします。





#何かの理由でどうしてコードで制御したいなら,プロパティでLinkedcellは設定せず,changeイベントはヤメにして

Private Sub SpinButton1_SpinDown()
Range("C4") = Application.Max(1, Range("C4") - 1)
End Sub

Private Sub SpinButton1_SpinUp()
Range("C4") = Range("C4") + 1
End Sub

などのようにしておくような方法もあります。
    • good
    • 0
この回答へのお礼

回答が遅くなりません。

回答者様のアドバイスを試したところ、完全に期待通りの結果でした。

またコードでの方法まで、教えていただき、本当にありがたいです。

こんなに理想どおりのアドバイスを頂けて、幸せです。

本当にありがとうございました。

お礼日時:2011/07/21 20:50

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!