[表示 : 全て 最新50 1-99 2ch.scのread.cgiへ]
Update time : 03/21 08:47 / Filesize : 5 KB / Number-of Response : 22
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part70



1 名前:デフォルトの名無しさん mailto:sage [2021/03/18(木) 22:08:43.71 ID:jtngtgXU0.net]
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付けるナリ

ExcelのVBAに関する質問スレナリ
コード書き込みや作成依頼もOKナリ

※前スレ
Excel VBA 質問スレ Part69
https://mevius.5ch.net/test/read.cgi/tech/1607786543/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

2 名前:デフォルトの名無しさん [2021/03/18(木) 22:33:41.83 ID:e6JgDwDC0.net]
教えて下さい。
あるシートに買物記録があり、日付や購入店、商品名や単価の他に、商品の分類という列があります。
その列には「文具」「食品」「書籍」等が入力されています。

VBAで以下の動作をさせたいです。
 ↓
別シートにあるダウンリストに、選択肢として、この商品分類に入力されている値を設定する。
重複して入力されている値は無視。入力されているすべての「分類」をひとつずつ選択肢にする。
 ↑
これをどう書けばいいのか、教えて下さい。
よろしくお願いいたします。

3 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 02:09:13.85 ID:pQtJO8X70.net]
関数でも分類列をMATCHで検索してRow()と不一致なら空白として、それを入力規則にすれば出来そう

VBAでやるなら連想配列使って重複弾いて、かな

4 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 12:08:42.44 ID:Efxeclnea.net]
>>2
もう少し個別にどの部分で詰まっているか書いた方がいいんじゃね

5 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 12:19:16.87 ID:Rf8ZEH4N0.net]
>>2
ワークシート関数でいいなら

適当なセルに
=UNIQUE(商品の分類が入力された列)
と入力すると重複整理された配列が入力される

プルダウンリストを作りたいセルを選択して「データの入力規則」を選択、
規則をリスト、ソースをさっき作った配列がある列にする

6 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 13:13:27.10 ID:LUl3FuSJa.net]
ピボットグラフのRefresh処理が重くて困ってます
汎用的な処理中に停止すべき項目(画面描画、自動計算、イベント、アラート等)は停止させています
元テーブルの行は100程度です

処理を軽くする方法があればご教示願います

7 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 20:19:38.16 ID:TXt81ZmU0.net]
>>6
ピボットテーブルの設定で「更新時に列幅を自動調整する」のチェックを外す

8 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 20:23:00.26 ID:Rf8ZEH4N0.net]
ググるとそれ出て来るけど、あんまり意味ないよ
って言いつつ効果あったら恥ずかしいけど

9 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 22:16:15.80 ID:TXt81ZmU0.net]
初心者にはそのくらいしか教えられん

10 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 22:28:12.63 ID:ZGQ0wMm+a.net]
>>7
ありがとうございます

ですが 処理が重くて困っているのはテーブル(ピボットテーブルではない)から作っているピボットグラフなのです

これが重かったりするんですかね…?



11 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 23:06:18.73 ID:Rf8ZEH4N0.net]
というか元々のグラフ生成が重いのかマクロが重いのか分からん
普通に更新ボタン押しても重いの?

12 名前:デフォルトの名無しさん mailto:sage [2021/03/19(金) 23:55:25.74 ID:tSoX9T0pa.net]
>>11
普通に手動でも遅いです…
何かピボットグラフの設定によるものならとも思いますが…

13 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 00:13:52.57 ID:1HieLmil0.net]
グラフ更新よりも関数で固まってる可能性の方が高いから、
一度全部の関数を削除してみて解決するか確認した方がいいと思う
自動計算切っててもピボット更新時に再計算されてる筈だし

14 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 01:01:30.93 ID:7VltWvHha.net]
>>13
ありがとうございます
ワークシート関数は使わず、計算は全部vbaでやっています
関数と言えるのはピボットグラフのグラフ部分だけです
ピボットグラフのグラフ部分の関数が重くなっている可能性が考えられるかも、と思いました
ありがとうございます

15 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 04:43:36.06 ID:kQoUW+sA0.net]
すげえなワークシート関数一切使わんでマクロだけでやるとは

16 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 06:51:00.93 ID:EyTYq69F0.net]
遅いとか速いとか漠然としているので何秒かかっているかもわからんし
データ量やステップが増えればある程度遅くなるのは当然じゃね

17 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 07:28:18.81 ID:/meO8w1y0.net]
2〜3秒でも遅いと思う人もいるしね

18 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 10:08:34.03 ID:D1FjuE5r0.net]
VBA使ってんならどの部分でどんだけ時間かかってるか測定すりゃいいだけの話なのになぜしないんだろう

19 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 11:15:44.57 ID:Awf5aTeqa.net]
>>18
Refreshのところで3秒かかっています
他処理全部は0.5秒で終わります

20 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 20:35:40.01 ID:EyTYq69F0.net]
PCの性能が低いんじゃね



21 名前:デフォルトの名無しさん mailto:sage [2021/03/20(土) 20:48:09.36 ID:kQoUW+sA0.net]
それだ!
パソコンのせい
ゲーミング用買えば全てにおいてスマホ級の速さだ!






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](*・∀・)<5KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef