Excel VBA質問箱 IV

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

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


4570 / 13644 ツリー ←次へ | 前へ→

【55880】変数内の検索・まとめ 亜矢 08/5/22(木) 5:24 質問[未読]
【55881】Re:変数内の検索・まとめ Yuki 08/5/22(木) 7:27 発言[未読]
【55886】Re:変数内の検索・まとめ 亜矢 08/5/22(木) 9:55 お礼[未読]

【55880】変数内の検索・まとめ
質問  亜矢  - 08/5/22(木) 5:24 -

引用なし
パスワード
   よろしくお願いします。
 変数の中に同じデータが有る場合、それをまとめたいと思います。
たとえば
    A(1)=月
    A(2)=火
    A(3)=水
    A(4)=木
    A(5)=月
    A(6)=土
    A(7)=月
     ・
     ・
     ・ 
   これを
    B(1)=月
    B(2)=火
    B(3)=水
    B(4)=木
    B(5)=土
 変数量はそのたびに変わります。変数の中身も都度かわります。その
 様な状態で上記ようにしたいのです。同じデータは捨てた、新しいデータに
 したいのですが、方法がわかりません。シートに貼り付けてとか
  思いますが、変数の状態のままできる方法を教えて頂きたいと
  思います。

【55881】Re:変数内の検索・まとめ
発言  Yuki  - 08/5/22(木) 7:27 -

引用なし
パスワード
   ▼亜矢 さん:
>よろしくお願いします。
> 変数の中に同じデータが有る場合、それをまとめたいと思います。
>たとえば
>    A(1)=月
>    A(2)=火
>    A(3)=水
>    A(4)=木
>    A(5)=月
>    A(6)=土
>    A(7)=月
>     ・
>     ・
>     ・ 
>   これを
>    B(1)=月
>    B(2)=火
>    B(3)=水
>    B(4)=木
>    B(5)=土
> 変数量はそのたびに変わります。変数の中身も都度かわります。その
> 様な状態で上記ようにしたいのです。同じデータは捨てた、新しいデータに
> したいのですが、方法がわかりません。シートに貼り付けてとか
>  思いますが、変数の状態のままできる方法を教えて頂きたいと
>  思います。

こんな感じですか。

Dim SD     As Object
Dim A(1 To 7)  As Variant
Dim B      As Variant
Dim i      As Long

A(1) = "月"
A(2) = "火"
A(3) = "水"
A(4) = "木"
A(5) = "月"
A(6) = "土"
A(7) = "月"

Set SD = CreateObject("Scripting.Dictionary")
For i = LBound(A) To UBound(A)
  SD(A(i)) = Empty
Next
B = SD.keys
Set SD = Nothing
For i = LBound(B) To UBound(B)
  Debug.Print "B(" & i & ")= " & B(i)
Next

【55886】Re:変数内の検索・まとめ
お礼  亜矢  - 08/5/22(木) 9:55 -

引用なし
パスワード
   ▼Yuki さん:
>▼亜矢 さん:
>>よろしくお願いします。
>> 変数の中に同じデータが有る場合、それをまとめたいと思います。
>>たとえば
>>    A(1)=月
>>    A(2)=火
>>    A(3)=水
>>    A(4)=木
>>    A(5)=月
>>    A(6)=土
>>    A(7)=月
>>     ・
>>     ・
>>     ・ 
>>   これを
>>    B(1)=月
>>    B(2)=火
>>    B(3)=水
>>    B(4)=木
>>    B(5)=土
>> 変数量はそのたびに変わります。変数の中身も都度かわります。その
>> 様な状態で上記ようにしたいのです。同じデータは捨てた、新しいデータに
>> したいのですが、方法がわかりません。シートに貼り付けてとか
>>  思いますが、変数の状態のままできる方法を教えて頂きたいと
>>  思います。
>
>こんな感じですか。
>
>Dim SD     As Object
>Dim A(1 To 7)  As Variant
>Dim B      As Variant
>Dim i      As Long
>
>A(1) = "月"
>A(2) = "火"
>A(3) = "水"
>A(4) = "木"
>A(5) = "月"
>A(6) = "土"
>A(7) = "月"
>
>Set SD = CreateObject("Scripting.Dictionary")
>For i = LBound(A) To UBound(A)
>  SD(A(i)) = Empty
>Next
>B = SD.keys
>Set SD = Nothing
>For i = LBound(B) To UBound(B)
>  Debug.Print "B(" & i & ")= " & B(i)
>Next
ありがとうございました。解決しました。

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