Excel VBA質問箱 IV

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

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


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

【10450】特定セルへの入力 momo 04/1/27(火) 11:49 質問
【10452】Re:特定セルへの入力 Asaki 04/1/27(火) 12:39 回答
【10463】Re:特定セルへの入力 momo 04/1/28(水) 10:43 質問
【10464】Re:特定セルへの入力 Asaki 04/1/28(水) 10:53 回答
【10465】Re:特定セルへの入力 momo 04/1/28(水) 11:34 質問
【10470】Re:特定セルへの入力 Asaki 04/1/28(水) 11:47 回答
【10473】Re:特定セルへの入力 momo 04/1/28(水) 12:05 質問
【10474】Re:特定セルへの入力 Asaki 04/1/28(水) 12:14 回答
【10476】Re:特定セルへの入力 momo 04/1/28(水) 13:37 お礼

【10450】特定セルへの入力
質問  momo  - 04/1/27(火) 11:49 -

引用なし
パスワード
   いつもお世話になっていますm(__)m
今回は"co"という変数に入力した文字を
特定のセルに表示させたいのですができません・・・・

Dim co As String
co = ""
Dim k As Integer
k = 4

Do Until k = 0
co = co & "i"
k = k - 1
Loop

'mydateには日付が入ります。
Select Case mydate
  Case "1/1"
    Worksheets("birth").Range("C8").Value = co
  Case "1/2"
    Worksheets("birth").Range("C9").Value = co
End Select

上記のSelectCaseではセルに表示できません・・・
どうしたらよいのでしょう・・・教えてください。

【10452】Re:特定セルへの入力
回答  Asaki  - 04/1/27(火) 12:39 -

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

mydate のデータ型は何で宣言していますか?
Date型なら
>Select Case mydate
 ↓
Select Case Format(mydate, "m/d")
では如何ですか?

【10463】Re:特定セルへの入力
質問  momo  - 04/1/28(水) 10:43 -

引用なし
パスワード
   ▼Asaki さん:
返答ありがとうございます!

ご指示どおり
>Select Case Format(mydate, "m/d")
で表示できるようになりました!

>mydate のデータ型は何で宣言していますか?
ただ、不思議なのはmydateはString型で文字として
月と日(もちろん間には"/")を入力しています。
Msgboxでmydateの中を表示しても月と日だけの表示なのですが
もし、お手数でなければその辺の理由を教えていただけませんか??
お願いします。

【10464】Re:特定セルへの入力
回答  Asaki  - 04/1/28(水) 10:53 -

引用なし
パスワード
   >>mydate のデータ型は何で宣言していますか?
>ただ、不思議なのはmydateはString型で文字として
>月と日(もちろん間には"/")を入力しています。
この条件なら、こちらでは別に元のコードを変更しなくてもちゃんと動きます。

途中でデータ型の変換とかしていませんか?
また、mydate の値をどのように設定しているかに因るかもしれません。
日付書式のセルから設定しているのであれば、
mydate = Cells(1, 1).Value

mydate = Cells(1, 1).Text
のような感じで設定すると、元のコードのままでも動く可能性はあります。

【10465】Re:特定セルへの入力
質問  momo  - 04/1/28(水) 11:34 -

引用なし
パスワード
   ▼Asaki さん
何度もすみません・・・
mydateはCellからの参照ではなく、今日の日付からFormat関数を
使用して、月と日を取り出して、間に"/"を入力しています・・・
さらに、配置場所を変更したところまた、動かなくなってしまいました。
コードでは"K"には4を代入していますが、これはカウンターに使用しており
Insert、updateのコードに書いていて、その個数を表示しようと
しているのですが・・・以前は表示のみのコード中に記入したら動きました・・・
なんだかややこしい質問でごめんなさい。

【10470】Re:特定セルへの入力
回答  Asaki  - 04/1/28(水) 11:47 -

引用なし
パスワード
   こちらからは、シートもコードも見えませんので、なんともいえません。
可能でしたら、
ダミーデータ(使うのであれば)とか全コードとかをupしていただけないでしょうか?

【10473】Re:特定セルへの入力
質問  momo  - 04/1/28(水) 12:05 -

引用なし
パスワード
   ▼Asaki さん:
>ダミーデータ(使うのであれば)とか全コードとかをupしていただけないでしょうか?
こちらに掲載すればよいのでしょうか?
結構長いと思うのですが、良いですか??

【10474】Re:特定セルへの入力
回答  Asaki  - 04/1/28(水) 12:14 -

引用なし
パスワード
   >こちらに掲載すればよいのでしょうか?
>結構長いと思うのですが、良いですか??

大丈夫だと思います。
全部でなくても、関連するところが特定できているのであれば、そこだけでもよいですし。
あとはネット上で公開する、ということで不都合がないように(特にデータ)、というところです。

【10476】Re:特定セルへの入力
お礼  momo  - 04/1/28(水) 13:37 -

引用なし
パスワード
   ▼Asaki さん
本当にごめんなさい!!
mydateの入力でミスがありました!

Dim str1 As String, str2 As String   '置換に使用
Dim str3 As String, result1 As String
Dim result2 As String

'tuki と hi には予めDATEから月と日にちが入っています。

'検索対象文字列
str1 = tuki
'検索文字列
str2 = "月"
'置換文字列
str3 = "/"
result1 = Replace(str1, str2, str3)

str1 = hi
str2 = "日"
str3 = " "
result2 = Replace(str1, str2, str3)

'文字列の整形
'文字列の末尾のスペースを削除月と日の連結
Dim imstr As String
imstr = result1 & result2
mydate = RTrim(imstr)

以上のコードで、最終行の Rtrim を付け忘れていました・・・
そのために日付の後ろにスペースが・・・メッセージボックスで
表示しているときには全然気づかなくて・・・
本当にごめんなさい。そして親切に教えていただいて感謝しています。

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