Excel VBA質問箱 IV

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

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


42456 / 76732 ←次へ | 前へ→

【39345】Re:2006/7月分のみ抽出したい場合
お礼  サン E-MAIL  - 06/6/22(木) 15:00 -

引用なし
パスワード
   ▼ハト さん:

有難うございます。

大変申し訳ないのですが、

TDate = WS1.Cells(i + 1, "J")
の所が黄色になって止まってしまいます。

なぜなのかわからないので、
何度も大変申し訳ございませんが
教えて頂けますでしょうか。

御忙しい所、申し訳ございません。


>▼サン さん:
>>
>> A1    B1 C1  D1   E1   F1     G1
>>顧客コード 顧客名    部署 担当者 売上日  伝票番号  売上金額
>>1000000  ××  ×× ××  2006/01/01 000000   100,000
>>
>> H1   I1   J1     K1    L1  M1
>>未収金額 備考  入金予定      入金情報 当社担当 UHNAMK
>>100,000  ××     2006/07/01  ××   ××   ××
>>
>>とエクセルのファイルになっています。
>>
>>質問1の回答ですが・・・
>>申し訳ございません。
>>あの数式で年と月を選択してくれるものだと思っていました。
>>
>>質問2の回答ですが・・・
>>上記の記入で解りますでしょうか。
>>
>>何度も何度も申し訳ございません。
>>
>
>どうもSELECT、OFFSET を使っていて混乱なされていたようですね
>こういうケースではSelectを使わないでやる方法の方が良さそうです
>
>サンさんのを元に作ると次のような感じですね
>お試しください
>(まだ改善の余地はありそうですが・・・)
>
>Sub データ抽出販売()
>'---------------------------宣言セクション(各項目 最大1000件まで格納する)---
>Dim 顧客コード(1000) As String
>Dim 顧客名(1000) As String
>Dim 部署(1000) As String
>Dim 担当者(1000) As String
>Dim 売上日(1000) As Date
>Dim 伝票番号(1000) As Single
>Dim 売上金額(1000) As Single
>Dim 未収金額(1000) As Single
>Dim 備考(1000) As String
>Dim 入金予定(1000) As Date
>Dim 入金情報(1000) As String
>Dim 当社担当(1000) As String
>Dim UHNAMK(1000) As String
>
>Dim n As Integer
>Dim i As Integer
>
>Dim mstr As String
>
>Dim WS1 As Worksheet
>Dim WS2 As Worksheet
>Dim TDate As Date
>Dim SName As String
>
>'-----------------------メッセージボックスの表示------------------------------
>  mstr = InputBox("何月分を抽出しますか?(数字のみ)", "抽出月指定")
>
>'----------------------該当データを一旦メモリ上に格納する---------------------
>  Set WS1 = ThisWorkbook.Worksheets("販売")
>
>  n = 0
>  i = 0
>  
>  Do While WS1.Cells(i + 1, "A") <> "" '----------A列で空欄がくるまで繰り返す
>   
>    TDate = WS1.Cells(i + 1, "J")
>  
>    If Year(TDate) = Year(mstr) And Month(TDate) = Month(mstr) Then '----メッセージボックスで入力した月のデータを格納
>      
>      顧客コード(n) = WS1.Cells(i + 1, "A").Value
>      顧客名(n) = WS1.Cells(i + 1, "B").Value
>      部署(n) = WS1.Cells(i + 1, "C").Value
>      担当者(n) = WS1.Cells(i + 1, "D").Value
>      売上日(n) = WS1.Cells(i + 1, "E").Value
>      伝票番号(n) = WS1.Cells(i + 1, "F").Value
>      売上金額(n) = WS1.Cells(i + 1, "G").Value
>      未収金額(n) = WS1.Cells(i + 1, "H").Value
>      備考(n) = WS1.Cells(i + 1, "I").Value
>      入金予定(n) = WS1.Cells(i + 1, "J").Value
>      入金情報(n) = WS1.Cells(i + 1, "K").Value
>      当社担当(n) = WS1.Cells(i + 1, "L").Value
>      UHNAMK(n) = WS1.Cells(i + 1, "M").Value
>   
>      n = n + 1
>   
>    End If
>    i = i + 1
>    
>  Loop
>
>'----------------------抽出シート作成----------------------------------------
> 
>  Sheets.Add After:=Worksheets(Worksheets.Count) '----------シート挿入
>  SName = Year(mstr) & "-" & Month(mstr) & "月分" '----------シート名(シート名に『/』は使えない)
>  ActiveSheet.Name = SName
>  
>  Set WS2 = ThisWorkbook.Worksheets(SName)
> 
>  WS2.Range("A1").Value = "顧客コード"     '----------項目名
>  WS2.Range("B1").Value = "顧客名"
>  WS2.Range("C1").Value = "部署"
>  WS2.Range("D1").Value = "担当者"
>  WS2.Range("E1").Value = "売上日"
>  WS2.Range("F1").Value = "伝票番号"
>  WS2.Range("G1").Value = "売上金額"
>  WS2.Range("H1").Value = "未収金額"
>  WS2.Range("I1").Value = "備考"
>  WS2.Range("J1").Value = "入金予定"
>  WS2.Range("K1").Value = "入金情報"
>  WS2.Range("L1").Value = "当社担当"
>  WS2.Range("M1").Value = "UHNAMK"
>
>  For i = 0 To n - 1              '-----------メモリ上に格納していたデータを代入
>    
>    WS2.Cells(i + 2, "A").Value = 顧客コード(i)
>    WS2.Cells(i + 2, "B").Value = 顧客名(i)
>    WS2.Cells(i + 2, "C").Value = 部署(i)
>    WS2.Cells(i + 2, "D").Value = 担当者(i)
>    WS2.Cells(i + 2, "E").Value = 売上日(i)
>    WS2.Cells(i + 2, "F").Value = 伝票番号(i)
>    WS2.Cells(i + 2, "G").Value = 売上金額(i)
>    WS2.Cells(i + 2, "H").Value = 未収金額(i)
>    WS2.Cells(i + 2, "I").Value = 備考(i)
>    WS2.Cells(i + 2, "J").Value = 入金予定(i)
>    WS2.Cells(i + 2, "K").Value = 入金情報(i)
>    WS2.Cells(i + 2, "L").Value = 当社担当(i)
>    WS2.Cells(i + 2, "M").Value = UHNAMK(i)
>
>  Next i
> 
>  WS2.Range("A1").Select
>
>  Set WS1 = Nothing
>  Set WS2 = Nothing
>
>End Sub
2 hits

【39315】2006/7月分のみ抽出したい場合 サン 06/6/22(木) 10:59 質問
【39317】Re:2006/7月分のみ抽出したい場合 Jaka 06/6/22(木) 11:13 発言
【39318】Re:2006/7月分のみ抽出したい場合 サン 06/6/22(木) 11:20 お礼
【39321】Re:2006/7月分のみ抽出したい場合 ハト 06/6/22(木) 11:39 発言
【39325】Re:2006/7月分のみ抽出したい場合 サン 06/6/22(木) 11:45 発言
【39337】Re:2006/7月分のみ抽出したい場合 ハト 06/6/22(木) 13:37 発言
【39340】Re:2006/7月分のみ抽出したい場合 サン 06/6/22(木) 14:26 発言
【39342】Re:2006/7月分のみ抽出したい場合 ハト 06/6/22(木) 14:45 回答
【39345】Re:2006/7月分のみ抽出したい場合 サン 06/6/22(木) 15:00 お礼
【39347】Re:2006/7月分のみ抽出したい場合 ハト 06/6/22(木) 15:07 発言
【39349】Re:2006/7月分のみ抽出したい場合 サン 06/6/22(木) 15:17 お礼
【39350】Re:2006/7月分のみ抽出したい場合 サン 06/6/22(木) 15:20 お礼

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