1 名前:デフォルトの名無しさん [2020/06/26(金) 02:01:29.56 ID:uDfmpksE0.net] !extend:checked:vvvvv:1000:512 ↑同じ内容を2行貼り付ける ExcelのVBAに関する質問スレです コード書き込みや作成依頼もOK ※前スレ Excel VBA 質問スレ Part66 https://mevius.5ch.net/test/read.cgi/tech/1589085825/ VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
101 名前:デフォルトの名無しさん (ワッチョイ 4f7c-H7K1) mailto:sage [2020/06/30(火) 20:28:40 ID:x94da/wE0.net] 場合によってはoffset(i)にすればよい
102 名前:91 mailto:sage [2020/06/30(火) 20:44:53.74 ID:iUIa6Vpk0.net] すみません勘違いをしていました。最終行の 「Range("A2:A" & LastRow) = DayArray」 だと、A列が2行目以降空欄になってしまいます。 「Range(Cells(2, 1), Cells(LastRow, 1)) = DayArray」 も同じでしたが、 For i = 2 To LastRow Range("A" & i) = DayArray(i - 1, 1) Next i だと入りますが、できれば一括で置き換えたいので、正しい書き方を教えてください
103 名前:デフォルトの名無しさん mailto:sage [2020/06/30(火) 20:53:49.15 ID:x94da/wE0.net] >>102 入力先のセルは1列分なのにDayArrayは2列分あって2列目に年月日が入ってる ReDimを見直せ
104 名前:91 (ワッチョイ cfcc-pPzt) mailto:sage [2020/06/30(火) 21:20:49 ID:iUIa6Vpk0.net] >>103 Forの処理をこれに変えたらできました。ありがとうございます DayArray(i - 1, 0) = MyArray(i, 1) & "/" & MyArray(i, 2) & "/" & MyArray(i, 3)
105 名前:デフォルトの名無しさん (スプッッ Sd5f-at/t) mailto:sage [2020/06/30(火) 21:53:25 ID:5LSCXiWjd.net] ListView(lvw1、lvw2)を2つ用意して、それぞれに同じデータを同じ順番に追加した状態です。 矢印キーの上下でlvw1とlvw2の同行選択状態ってどうやってやるんですか?
106 名前:デフォルトの名無しさん mailto:sage [2020/06/30(火) 22:01:34.74 ID:3GBrKjbXa.net] >>105 1と2で同じ操作をやりたいなら、別プロシージャに切り分けて(関数化)それをそれぞれに処理する方がわかりやすい
107 名前:デフォルトの名無しさん mailto:sage [2020/06/30(火) 22:14:31.69 ID:x94da/wE0.net] >>105 keydownイベントで上下の時になんやかんやする
108 名前:デフォルトの名無しさん (ワッチョイ 4f7c-H7K1) mailto:sage [2020/06/30(火) 22:19:33 ID:x94da/wE0.net] 操作に関わらず一緒でいいならchangeイベントで楽に済ませられるが…
109 名前:デフォルトの名無しさん mailto:sage [2020/06/30(火) 22:39:03.05 ID:ulIgP7Tu0.net] Sub 四捨五入() Dim PP As Range Dim SELU As Range Set PP = Selection.EntireRow Set PP = Intersect(PP, Range("G:AE")) If WorksheetFunction.Count(PP) = 0 Then Exit Sub Set PP = PP.SpecialCells(xlCellTypeConstants, xlNumbers) For Each SELU In PP SELU = Round(SELU, 2) SELU.NumberFormatLocal = "0.00;-0.00;0" Next SELU End Sub 昨日の俺です こんな感じで四捨五入をしてる やはり記録するかコピーしといて間違えたら戻す作戦かなあ
110 名前:デフォルトの名無しさん mailto:sage [2020/06/30(火) 22:56:39.68 ID:RrxBtxCBr.net] A列とB列にXYデータが書かれているファイルがある このファイルが複数あり、データを縦にくっつけてひとつのファイルにする方法をお願い致します。
111 名前:デフォルトの名無しさん (ドコグロ MMc3-qQym) [2020/06/30(火) 23:33:01 ID:ayj87xxdM.net] >>110 「vba 別のブック間 コピー」でググればそれなりの答えのサイトは出てくるよ
112 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 16:24:36.34 ID:/ZTplk5x0.net] グラフの列の範囲を1つ進めて、範囲が変わったグラフを眺めてまた次の範囲を選択するマクロにしたいのですが、うまくいきません。 sleepで5秒待機するループにすると、マクロが終わるまでグラフはそのままです。 何か良い方法はありますか?
113 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 16:38:43.05 ID:ufrQ+5Zi0.net] 新しい表示にしてから待機したらいいんでないの
114 名前:デフォルトの名無しさん (ワッチョイ 1ecc-VQSO) mailto:sage [2020/07/01(水) 17:00:30 ID:JVz0cdM50.net] DoEvents
115 名前:デフォルトの名無しさん (ワッチョイ 3a33-h2ht) mailto:sage [2020/07/01(水) 17:01:38 ID:wdJg4V2k0.net] 眺め終わったら自分でボタン押す仕様にすればいい
116 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 18:02:59.35 ID:cdm/n45Wa.net] 眺めるってw
117 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 18:14:23.56 ID:BGy1oUher.net] A列に上から1万個くらいのデータがある。 ある値以下なら行全体削除、上詰めにするマクロをお願い致します。 ググってもまとをえたのがなく困ってます。
118 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 18:21:37.82 ID:ufrQ+5Zi0.net] >>117 作業列作ってある値以下なら1立てる→1でオートフィルタ→行削除
119 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 18:24:14.85 ID:g4YauoQu0.net] >>117 どうせ暇なんだろ、1万くらい手作業でやれよ
120 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 18:24:43.29 ID:v2a99oiHF.net] >>117 範囲をテーブルにする 条件に当てはまる行のa列から、データの入ってる最終列までClearContents で、テーブルをある列基準に並び替え
121 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 18:34:27.89 ID:5XfsDMDI0.net] wordをcomで操作しているんですが、基本的にcomは 同期処理できないんですか? たとえば、よくあるprintout(wordVBAの)〜Set wordApp = Nothing の流れなんかは、Application.Waitを入れないと印刷される前に 終わってしまいます。
122 名前:デフォルトの名無しさん [2020/07/01(水) 18:38:53.74 ID:34UZRJ820.net] >>117 dim r as long dim was as excel.worksheet set we=activesheet Do while r>0 if ws.cells(r,”A”)<ある値 then ws.rows(r).delete shift:=xlup else r=r-1 end if loop パフォーマンスは知らん
123 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 19:21:24.82 ID:g4YauoQu0.net] そして動かないとか言ってくる初心者
124 名前:デフォルトの名無しさん (ワッチョイ 8f5f-ewff) mailto:sage [2020/07/01(水) 19:44:41 ID:l3YNJLMh0.net] deleteは重いわ誤作動起こしやすいわいいことないよな
125 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 19:59:04.37 ID:fKGbFrld0.net] 誤作動なんて起こすの? 単にセル番号計算ミスしたスクリプト書くだけなら理解できるけど、誤作動なんてあったら使えないな
126 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 20:06:30.76 ID:Tir3cVcXa.net] フィルターかけてカレントリージョンでコピーして新規シートに貼り付けが良さそう
127 名前:デフォルトの名無しさん [2020/07/01(水) 21:01:32.84 ID:v34eJavmM.net] >>122 (r,”A”)<ある値 顔文字に見えたわw
128 名前:デフォルトの名無しさん [2020/07/01(水) 21:43:01.53 ID:H9TCgnXe0.net] Webで見たぐらいの初心者なのですが 書式設定の複数1行列を色変える作業が 200回ほどやらなきゃいけなく マクロ組んでみようかと頑張ったのですが 上手くいきません Dim a As Integer Dim row1 As Integer row1 = 3 For a = 0 To 200 Columns("row1 + a , P + a").Select Selection.Format Conditions.以下略 Selection.Format Conditions以下略 With Selection.略 Selection略 Selection略 Selection略 End With Next a row1を無くしてb=3 これをColumnsをRange(b+a,b+a) で出来ますでしょうか? Rangeの指定カッコ内では数式を入れられないとかありますか?
129 名前:デフォルトの名無しさん [2020/07/01(水) 22:17:29.48 ID:H9TCgnXe0.net] Range(cells(a,1),cells(a,16)).Select でやってみます
130 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 22:45:11.71 ID:xxJ42X4qa.net] 何故初心者はSelectしたがるのか
131 名前:デフォルトの名無しさん mailto:sage [2020/07/01(水) 23:36:22.71 ID:yn1qRX7nM.net] >>35 >>130 マクロの記録がその手のコードを生成するからでしょ
132 名前:デフォルトの名無しさん (ワッチョイ 87da-z1wt) mailto:sage [2020/07/02(木) 01:40:39 ID:Y/spJvDG0.net] 条件付き書式とかは?
133 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 02:34:51.75 ID:G8g1bCvWr.net] このメニューで、空白セルにチェック入れると空白セルを選択しますね。 では例えば値が100以上など、条件つきのセルを選ぶ事はできますか? https://i.imgur.com/zyDAZ0X.jpg
134 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 04:05:38.32 ID:vmiMC9VK0.net] 教えてください。 imagemsoの名称からfaceidに変換することは可能でしょうか? もしくはmsoBarPopupでimagemsoを使用することは可能でしょうか?
135 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 06:28:30.74 ID:PEAIWqln0.net] >>133 選んだセルをどうしたいかによるけど、オートフィルかけて選択とか
136 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 08:20:19.52 ID:yX39WODNa.net] 他人の作ったコードはなぜ読む気がしないのか
137 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 10:30:47.89 ID:KAImZ3Owa.net] 読む必要はないからな
138 名前:デフォルトの名無しさん (ワッチョイ 1e8e-0gyK) [2020/07/02(木) 12:31:17 ID:cWLbwDw40.net] 馬鹿の特徴 「教えて」「助けて」 で始まる書き込みをする
139 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 13:06:37.09 ID:vmiMC9VK0.net] >>138 馬鹿でもいいです。 じゃあ、模範的な質問の仕方を教えてください。
140 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 15:30:35.30 ID:NxUusdo6a.net] そんなものはない
141 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 16:07:39.62 ID:fLeksvw30.net] >>140 ありがとうごさいました。参考になります。
142 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 16:13:40.59 ID:pSHiLlcA0.net] 馬鹿の特徴 人にマウントしたがるだけで 質問への答えは出さない
143 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 17:04:38.40 ID:2Xt/GnSW0.net] >>142 馬鹿でもいいです。 じゃあ、模範的な回答の仕方を教えてください。
144 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 17:44:48.44 ID:Q59tEF0c0.net] そんなものはない
145 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 17:45:12.17 ID:q3lU8bAMa.net] そんなひとはいない
146 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 21:22:15.18 ID:sbstkRF+M.net] 馬鹿には馬鹿と指摘しないと、あまりに低レベルの自分でやってみようという意志もない馬鹿な質問で溢れかえるからこれくらいでいい
147 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 21:49:51.56 ID:2Xt/GnSW0.net] >>144 ありがとうございました。参考になります。 >>145 消えろ
148 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 22:51:02.52 ID:7/3Aifl90.net] ここが上級者ばかり集う高尚なスレだと思っているのかWWWWWWWWWWWW VBAごときでWWWWWWWWWw
149 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 23:33:21.68 ID:0km7hKfU0.net] VBAを随分下に見てるねえ。 別にC#で回答してもいいよ? VBAに脳内変換するから。
150 名前:デフォルトの名無しさん mailto:sage [2020/07/02(木) 23:47:09.16 ID:Y/spJvDG0.net] 上級者も馬鹿も両方いてあたりまえ お前らそんなにマウントとりたいのかw
151 名前:デフォルトの名無しさん [2020/07/02(木) 23:59:32.57 ID:yXnL3NZ/0.net] 誰か教えて。 式に=とか+を使うと字が読みにくくて困っています。 全角文字や絵文字を使うことはできないのでしょうか? 急いでいますからすぐに教えて、
152 名前: テトリス ◆SYKnw8OJpw [2020/07/03(金) 00:10:57 .net] テスト
153 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 00:14:47.41 ID:P5PHrlsB0.net] >>151 一休さんかコロンブスみたいな回答で良いなら出来る。 実際に全角文字や絵文字で書いてみな。
154 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 04:04:14.78 ID:B7qpVotz0.net] Function 〓(ByRef a, ByVal b) : a = b : End Function Function ┼(ByVal b, ByVal c) : 〓 ┼, WorksheetFunction.Sum(b, c) :End Function これを入れておけば、=とか+から解放されるぞ Sub test() Dim a 〓 a, 1 Debug.Print ┼(a, 1) End Sub
155 名前:デフォルトの名無しさん (ワッチョイ 0a2f-+ZV3) mailto:sage [2020/07/03(金) 12:58:30 ID:KESc8IU30.net] そんなソース絶対読みたくないな 読みやすいフォント探すか自作すればいいだけだろうに
156 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 13:30:11.45 ID:hUamHkOVa.net] ハズキルーペ使えよw
157 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 21:14:38.38 ID:mplhmvvw0.net] ワークシートの条件にあう行を削除して上に詰めるみたいなことを、配列内でしたいです。 多次元配列"ary"内の1列目が66か、6列が1000か、28列目が空欄のレコードを削除するコードを教えてください
158 名前:デフォルトの名無しさん [2020/07/03(金) 21:23:34.89 ID:Mxid+JS90.net] E列が空白になるまでE列とG〜M列に特定の処理をしたくて Do loopを使って何とかできないかと悩んでたけど座礁しますた Eの11行目を起点にして E列の数値が正の数ならEもG〜Mも数値はそのまま E列の数値が0ならEもG〜Mも数値はそのまま Eの数値が負の数ならEとG〜Mの数値を-*1 と反転させたい ってのは素人には荷が重すぎですかね?
159 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 21:31:07.37 ID:DQKehNsV0.net] 157,188 お互いに相手のコード相談しながら考えてあげればいいんじゃね ちょうどよさげだわレベル
160 名前:デフォルトの名無しさん (ワッチョイ 27ce-BXkI) mailto:sage [2020/07/03(金) 21:44:24 ID:4NyCV/dB0.net] >>158 いいえ、がんばればできます
161 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 21:55:13.66 ID:4NyCV/dB0.net] Sub Macro1() r = 11 '起点の行 Do While Cells(r, "E") <> "" If Cells(r, "E") < 0 Then Cells(r, "E") = -Cells(r, "E") For c = Asc("G") To Asc("M") Cells(r, Ch r(c)) = -Cells(r, Ch r(c)) Next c End If r = r + 1 Loop End Sub
162 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 22:17:41.55 ID:aUU6z7Ir0.net] そもそもマクロ作るのって違うデータでも同じ処理をやりたいような場合じゃないのか 一回限りのデータ抽出ならわざわざマクロなんか作る意味ないんだけどな 無駄に時間を浪費したいのかな
163 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 22:37:42.83 ID:qSqs6yG50.net] 使い捨てマクロってのもありまして
164 名前:デフォルトの名無しさん (ワッチョイ 6bda-ewff) mailto:sage [2020/07/03(金) 22:48:22 ID:3J4wGhdX0.net] 定型フォーマットの複数ファイルの同項目の値を集計したい なんて時は使い捨てマクロかな
165 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 23:04:06.95 ID:KESc8IU30.net] >>157 VBAの配列に要素詰める命令はなかったはずなので、どうしてもというなら 該当要素より下の要素を一つずつ上にずらす 最後の要素を消す とやればできなくはないがお勧めはしかねる
166 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 23:06:05.89 ID:KESc8IU30.net] >>158 それVBAじゃなくても計算式とワークの列使えばできると思うけど なぜ素人がVBAでやろうと思うんだ
167 名前:デフォルトの名無しさん [2020/07/03(金) 23:26:37.07 ID:Mxid+JS90.net] >>161 構文エラーでしたわ >>166 VBAでやりたかったのです…
168 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 23:27:55.78 ID:8QUz9sdRa.net] 確かに一回限りの作業なら マクロ考えているよりやった方が終わってるかもな
169 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 23:35:20.76 ID:P5PHrlsB0.net] >>157 配列内でやるならレコードセットだな。
170 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 23:42:57.67 ID:9EQo/V7m0.net] 一回きりだろうと同じ処理100回やるようなのもあるんだし
171 名前:デフォルトの名無しさん mailto:sage [2020/07/03(金) 23:46:08.59 ID:P5PHrlsB0.net] 1回限りでも3行くらいで済むのは書くな。
172 名前:デフォルトの名無しさん (ワッチョイ bb1d-+upQ) [2020/07/04(土) 00:48:12 ID:KIBH4SNT0.net] まだ22歳の学生社長が得た、23億円の「使い道」 あの橋本環奈をCMに使うバイトアプリの雄 https://toyokeizai.net/articles/-/319511 中学時代の車いす生活から、17歳で起業するまで https://www.advertimes.com/20200130/article306925/ ミャンマー発 AIダイニングアプリ「Yathar」をしかける日本人起業家 https://roboteer-tokyo.com/archives/14840 自分の視野は「世の中の0.001%」と自覚せよ。ビジネスチャンスを掴む4つの習慣 https://headlines.yahoo.co.jp/hl?a=20200511-00010001-srnijugo-life アプリの視聴率がわかる 高専卒起業家の独創力 https://www.nikkei.com/article/DGXMZO46695580Y9A620C1000000/ 1万人の若者を支援!インターンが日本を変えるかも!? glowshipの若き創業者・足立卓也氏インタビュー https://sogyotecho.jp/glowship-adachi-interview/ 大学生起業家が設立1年で20億円調達! 単発バイトアプリに外食企業など出資【タイミー】 https://foodfun.jp/archives/3490
173 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 01:40:09.94 ID:IOVEPry/0.net] 一般論としては頻度の多い作業の方が自動化に向いてるのは確かだけど、 1回だけでも大量のデータを加工したり手作業でやるには時間のかかる作業もあり、 作業時間の方がコード書く時間より長くなる場合も多々もあるのでケースバイケースやね
174 名前:デフォルトの名無しさん (ワッチョイ 5301-JCxG) [2020/07/04(土) 01:58:21 ID:42LT/T3f0.net] 逆に、山田やっとけ、というのはどうよ?
175 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 02:07:27.87 ID:VMWug14q0.net] やるとは何を?
176 名前:デフォルトの名無しさん [2020/07/04(土) 02:09:15.54 ID:42LT/T3f0.net] データの加工。
177 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 02:10:42.23 ID:VMWug14q0.net] 加工すればいいんじゃね
178 名前:デフォルトの名無しさん [2020/07/04(土) 02:13:10.44 ID:42LT/T3f0.net] いや、山田がやってくれないかなって。 だめ?
179 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 02:16:03.66 ID:VMWug14q0.net] だから山田がデータを加工すればいいんじゃね
180 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 02:38:36.13 ID:VMWug14q0.net] 素人にやらせた場合間違った結果を出すかもしれんが その場合頼んだ側にも責任があるけどそれでも山田にやらせるか?
181 名前:デフォルトの名無しさん [2020/07/04(土) 03:10:27.15 ID:42LT/T3f0.net] 田中のほうが良いかな?
182 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 03:37:53.50 ID:OxpkXjjxa.net] 斎藤さんだぞ
183 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 04:04:04.69 ID:IjVZd7O90.net] 山田ができるのは座布団運びだけだろ
184 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 07:02:36.51 ID:VZt6Ms3K0.net] do whileとかほとんど使わないわ あれ試行錯誤してる最中に脱出条件間違えて固まるとイライラってするんで >>158 こういうのは 途中で空白行挟んでたらどうすんのとか考えるとEnd(xlup)とか使って無難にforで回したい 最も空白行挟んでたらそこまでしか処理しないのかもしれんけど それなら上から順に一旦回して空白行がどこに出るのか調べてからやるわ 全データ配列に格納してからやれば速度的にも問題ないと思うし
185 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 07:59:26.14 ID:yagtSNgld.net] 観測地点が全国で2000ヶ所、1時間毎の観測結果3年分のデータがあって、8時間毎に観測出来なかった場合も踏まえて平均し、観測出来なかったのが8時間の内4時間以上あったら平均値も出力出来なかったとする。 で、その8時間の平均値は1時間ずつずれて24個分で1日のデ―タとなるんだが、それをさらに平均して1日の値とする なんてのやったが1回限りでもVBA使わないと無理。 というか普通に考えてVBAでも無理だけどね。
186 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 09:41:06.65 ID:htrp3xgD0.net] >>157 配列に入れたら順番に書き込んで条件の時だけ書き込みスキップじゃ駄目なの?
187 名前:デフォルトの名無しさん (ワッチョイ 1e8e-0gyK) [2020/07/04(土) 10:01:18 ID:1naoKVTK0.net] >>185 お前の低い知能の頭ではできないだけだろ
188 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 11:47:27.20 ID:VZt6Ms3K0.net] 簡単だよな セルにどういう風にデータが並んでるかで多少の工夫がいるかもしれんけど 加減乗除のみのワンパターン
189 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 12:11:54.32 ID:xB5SKVkx0.net] 水口克也氏のExcelVBA入門講座って本を使ったことある人いますか? 最後のじゃんけんゲームを作る所が、どうしてもうまくいきません
190 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 12:23:35.41 ID:KlM0EefbM.net] >>185 作業シート使ってExcelだけでできるんじゃね? そもそも移動平均の平均とかあまり意味ないことやってる方が気になるけど
191 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 12:37:06.40 ID:/jHrZd8o0.net] 8時間平均から24時間平均への変換は一般的なLPF処理だな デジタル信号処理で数値データを扱う基本的な考え方だよ
192 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 13:05:03.59 ID:VZt6Ms3K0.net] >>157 全要素forで回しながら 条件合うものだけを新しい配列newArrayにいれていけばいいじゃん その後新しい配列から、データ空にしたシートに記入 新しい配列の要素数、特に1次元要素数(行数)だけど Redim Preserveで順次増やしていくのはこの場合できないから、 一旦行数を確定するためだけにfor回してカウント 要素数確定したnewArray作ってから もう一度for回して入れていけばいい 行列逆転させればredim preserve使って一発でもいけるか 特に巨大なデータでなければ間違い避けるために二回まわすなおれなら 行削除によって表自体の体裁を上に詰めていきたいっていうなら 最初にforを回した後、元の行数とnewArrayの行数の差だけ表の行を削除 データはすでに配列にとってあるんだからどこから削除しても構わない
193 名前:デフォルトの名無しさん (ワッチョイ 8a01-21HI) mailto:sage [2020/07/04(土) 13:32:13 ID:IjVZd7O90.net] >>191 それ一気に24時間平均でよくね?
194 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 13:43:57.26 ID:/jHrZd8o0.net] いきなりデータ粒度を荒くするのは悪手 ましてや>>185 の場合はじめに欠損データのノイズキャンセルも行っているのでまとめて行なうとデータの精度が低下する
195 名前:デフォルトの名無しさん (アウアウエー Sa82-h0J+) mailto:sage [2020/07/04(土) 14:05:30 ID:Em2AcreDa.net] 24コマを1コマにするんだから 平らに均すのに精度もクソも無い気がする
196 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 14:21:18.07 ID:/jHrZd8o0.net] データ値の定常状態と過渡状態を理解していれば分かる 粒度が荒いと応答性が悪化するので現象の追従が遅れる 安定時のデータ値だけならともかくデータの変化を取りこぼすリスクが高くなるんだよ
197 名前:デフォルトの名無しさん (アウアウエー Sa82-h0J+) mailto:sage [2020/07/04(土) 14:31:13 ID:Em2AcreDa.net] >>196 そりはモニタのアッパーとローワーにトリガー仕込んだら良い話ではないのでしゅか?
198 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 14:44:04.22 ID:/jHrZd8o0.net] 上限、下限決め打ちの場合はトリガ仕込むのでも通用はする ただ一日当たりの変化量でアクション起こす場合はどうする? 移動差分(微分)を連続的にデータ処理しないと難しい
199 名前:デフォルトの名無しさん mailto:sage [2020/07/04(土) 14:48:04.16 ID:ZiXQ0AsVa.net] 喧嘩はやめよう
200 名前:157 mailto:sage [2020/07/04(土) 14:58:18.35 ID:oup49XFx0.net] >>186 仮の配列を作り、編集してaryに入れるようにしたいのですが これだと、全て空欄になってしまいます Dim i As Long, j As Long, cnt As Long, cnt2 As Long i = Cells(Rows.Count, 1).End(xlUp).Row '仮の配列 ReDim Kariary(i, 30) As Variant Kariary = Range("A2:AD" & i).Value '最終的に代入する配列 ReDim ary(i - 1, 30) As Variant For cnt = 1 To i - 1 If Not Kariary(cnt, 1) = 66 Or _ Kariary(cnt, 6) = 1000 Or _ Kariary(cnt, 28) = "" Then j = UBound(ary) + 1 If j < i - 1 Then For cnt2 = 1 To 30 ReDim Preserve ary(j, 30) As Variant ary(j, cnt2) = Kariary(cnt, cnt2) Next cnt2 End If End If Next cnt 'シートを一旦クリア Cells.Clear Range("A2:AD" & i) = ary