Excel VBA質問箱 IV

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

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


7396 / 13645 ツリー ←次へ | 前へ→

【39411】関数の代入 かつお 06/6/23(金) 15:47 質問[未読]
【39412】Re:関数の代入 Statis 06/6/23(金) 16:08 回答[未読]
【39416】Re:関数の代入 かつお 06/6/23(金) 16:24 質問[未読]
【39419】Re:関数の代入 Statis 06/6/23(金) 16:30 回答[未読]
【39423】Re:関数の代入 Blue 06/6/23(金) 16:48 発言[未読]
【39425】Re:関数の代入 ひげくま 06/6/23(金) 17:00 回答[未読]

【39411】関数の代入
質問  かつお  - 06/6/23(金) 15:47 -

引用なし
パスワード
   セルA1に1を入力すると、セルC1の文字が全角大文字の「KATUO」
セルA1に2を入力すると、セルC1の文字が半角小文字の「katuo」
何もセルA1に入力がない場合は、表示なしとなるようにする。

ということがしたのですが、お願いします。

【39412】Re:関数の代入
回答  Statis  - 06/6/23(金) 16:08 -

引用なし
パスワード
   こんにちは
該当のシートモジュールにて

Private Sub Worksheet_Change(ByVal Target As Range)
With Target
   If .Address(0, 0) <> "A1" Then Exit Sub
   If .Cells.Count > 1 Then Exit Sub
   Application.EnableEvents = False
   Select Case .Value
      Case 1: .Offset(, 2).Value = StrConv(.Offset(, 2).Value, 1)
      Case 2: .Offset(, 2).Value = StrConv(.Offset(, 2).Value, 2)
      Case "": .Offset(, 2).ClearContents
   End Select
   Application.EnableEvents = True
End With
End Sub

【39416】Re:関数の代入
質問  かつお  - 06/6/23(金) 16:24 -

引用なし
パスワード
   ▼Statis さん:
どうもありがとうございます。
でも、標準モジュールで処理はできなのでしょうか?
もし、方法があれば教えて下さい

【39419】Re:関数の代入
回答  Statis  - 06/6/23(金) 16:30 -

引用なし
パスワード
   こんにちは
こんな感じです。

Sub test()

With Range("A1")
   Select Case .Value
      Case 1: .Offset(, 2).Value = StrConv(.Offset(, 2).Value, 1)
      Case 2: .Offset(, 2).Value = StrConv(.Offset(, 2).Value, 2)
      Case "": .Offset(, 2).ClearContents
   End Select
End With


End Sub

【39423】Re:関数の代入
発言  Blue  - 06/6/23(金) 16:48 -

引用なし
パスワード
   ▼かつお さん:
>でも、標準モジュールで処理はできなのでしょうか?
標準モジュールだと

> セルA1に1を入力すると
というように、A1に値を入れた瞬間に変更するような動きはできません。
自分でマクロを呼ばないと、内容は変わりません。

【39425】Re:関数の代入
回答  ひげくま  - 06/6/23(金) 17:00 -

引用なし
パスワード
   VBAは使わずに、セルC3に

=IF(RC[-2]="""","""",IF(RC[-2]=1,""KATUO"",IF(RC[-2]=2,""katuo"",)))

と書くだけではいけないのでしょうか?

この数式をセルC1に書き込むのであれば、

Range("C1").FormulaR1C1 = "=IF(RC[-2]="""","""",IF(RC[-2]=1,""KATUO"",IF(RC[-2]=2,""katuo"",)))"

ですね。

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