X



エクセルマクロ悔しい人教えてください
■ このスレッドは過去ログ倉庫に格納されています
0002以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 21:59:46.546ID:08ssHwCc0
指定範囲を切り取りして別のエクセルに貼り付けるマクロ記録するだけ
0003以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:00:05.709ID:HrtXHJ1F0
隣のおっちゃんに頼む
0004以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:00:45.193ID:n3y6MoM90
マクロを記録する、を押す

シートを新規追加する
入力したセルの内容を前のシートからコピーする
マクロの記録終了をおす

これでいけるやろ
後はマクロから再実行すればよし
0006以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:02:25.894ID:OVgZZRfPM
Worksheet_Changeから頑張る
0008以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:03:41.037ID:kGBZu3Ss0
VIPで話しても伝わらない
0010以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:06:07.673ID:HrtXHJ1F0
テトリスかよ
0011以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:06:47.596ID:n3y6MoM90
それやろうと思ったら
マクロの記録では厳しい気がする
0013以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:08:20.340ID:vxzClIHl0
対象のセルを常に監視して、全てがnullじゃなくなった時にカット&ペーストすれば良いがマクロの使い方としてループ待機とかやるの?
それともとある条件がトリガーとなるようなマクロのスタート方法があるの?
0016以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:11:18.324ID:ksdGCsji0
セルの内容が更新されたらは
changeでいけたと思う
0017以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:11:32.572ID:n3y6MoM90
>>4のマクロ記録したらマクロを開いて
コピーする範囲がrange("6a:6h")みたいになってるから
range(application.activecell.row&"a:"&application.activecell.row&"h")
に書き換えすれば選択してる行の値をコピーしてくれる
0018以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:11:47.587ID:OpRqqNKhM
>>14
埋まったときに自動じゃねえの?
最初の話だと入力されたらってなってるが
それならworksheet_changeイベントでなくコマンドボタンにマクロ登録か
0020以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:15:39.408ID:n3y6MoM90
>>9
むしろこの図を短時間で描けるのが凄くね
0021以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:16:52.472ID:pWeaIjOw0
VBA初心者だけど埋まっただけで自動で動くものなの?
ボタン押さないと動かない気が
0022以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:18:16.616ID:LUWTGWMP0
日付欄に入力してenter押すことでマクロが動くようにすりゃいいじゃんか
0023以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:18:33.788ID:OpRqqNKhM
>>19
出来るよ
元ファイルxlsxに直して上げられるなら暇だし組んでやってもいい
0025以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:19:52.275ID:ksdGCsji0
イベントプロシージャ セルの値
とかで検索したら自動判定するやり方は出てくるよ
0027以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:23:01.105ID:OpRqqNKhM
>>26
あーcalcマクロは触ったことすらねえな
すまん分からん
0028以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:24:04.410ID:vxzClIHl0
調べたらworkbook_openとworksheet_changeでいけそうな気がするな

workbook_open
 worksheet_change
  なんらかの変数=false
  for(i=0;i<10;i++){
   なんらかの変数=cell(i, 10)!=null
  }
  if(なんらかの変数) カットペースト
end


もう5年以上vba触ってないからなんとなくだがこんな感じに出来るのかな…
0030以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:28:02.726ID:OpRqqNKhM
>>28
だいたいそんな感じだわな
多分>>9のイメージだと下に追加していきそうだからターゲットシートの最下段取得が要るか
後は不正値で埋まったときにも勝手に飛んでいかれるとうざいからそこら辺のチェック入れるとか
0034以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:33:35.860ID:ksdGCsji0
>>29
>>28が書いてくれてるみたいに
ifで条件分岐させるのがいいと思うけど
そんな感じだね
0036以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:36:27.751ID:vxzClIHl0
>>30
まぁ細かい処理や例外処理みたいなのが必要なのは承知
ここまで出来れば後は拡張する感覚で>>1が求めてるもの出来ると思う
単純にこんなんじゃなくてもっと良い方法もあるかもしれんがな
0038以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:44:09.808ID:ksdGCsji0
>>35
>>31のやり方で範囲しようとしてるのが
10×10の範囲だとしてやっぱり>>28みたいな
1行ずつ判定して条件分岐するやり方になると思う
0040以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:47:04.625ID:vxzClIHl0
>>28
バグあるな
なんらかの変数は数値型が良いな

なんらかの変数+=cell(i, 10)!=null?1:0
if(なんらかの変数==10) カットペースト
0042以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 22:57:44.153ID:ksdGCsji0
>>39
>>31だとどこかのセルになにか入力されたら
それがA1:B5の範囲のセルだとメッセージ出す
みたいなマクロだからマクロが走るタイミングは
「どこかのセルに何か入力されたら」でいいとして
行が埋まったとかはあるかを上から下まで1行ずつ判定して
あるならカットペーストないなら次の行へ
ていう動きをさせるのが確実だとは思う
長くてごめんね
0043以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:00:39.275ID:B3wj4fu80
ボタンポチで転記するってことは埋まってる行が複数あったら一纏めに処理する感じです?

どこかの行が埋まった瞬間にその行を転記してしまうのならWorksheet_Changeでいいと思うけど、
Worksheet_Changeはボタンマクロとして使えなかったような
0044以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:01:14.590ID:ksdGCsji0
1行ずつ判定→forのとこ
行が埋まってるならカットペースト→ifのとこ
>>28>>40が書いてくれてる
0046以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:05:42.703ID:vxzClIHl0
>>41
1.ファイルが開かれた時に処理開始(workbook_open)
2.シートが更新された時に下記の処理実施(worksheet_change)
 2.1.変数を0で初期化
 2.2.ループ(iは0から始まり9まで繰り返す)
  2.2.1.セル(i行、10列)がnullでは無かった場合、変数に+1する
 2.3.変数が10の場合、切取りと貼付けを実行


2.2.1の処理は行列入れ替えても良いし、多分やりたい事としては行と列がこのプログラムだと逆だよね
0049以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:13:08.242ID:ksdGCsji0
>>45
10×10の範囲なら人力で目視判断可能だから
特定した行を選択した状態で>>29の切り取りから
やってもある程度うまくはいくと思うけど
人なら「見れば判断できる」を自動でやらせるの難しいよね
0051以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:18:32.508ID:Od7o5rVD0
はいはいエクセルエクセル

┏━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ 現場名   ┃                                            ┃
┣━━━━━╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
┃ 場  所   ┃                                            ┃
┣━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━━┫
┃     o 浮き部分 注入工事                                 ┃
┃      ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄                               ┃
┃ ①     現    状              ⑥ ステンレスピン差し込み       ┃
┃                                                  ┃
┃ ②     マーキング状況              ⑦  穴   埋め     状  況       ┃
┃                                                  ┃
┃ ③     削   孔   状況              ⑧  完   了               ┃
┃                                                  ┃
┃ ④     孔内 清掃状況                                   ┃
┃                                                  ┃
┃ ⑤     エポキシ樹脂注入状況                            ┃
┃                                                  ┃
┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
0052以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:19:30.123ID:vxzClIHl0
>>47
並び順変えたらセルの値が変わるから、それでworksheet_changeが発火したらいける気がするし、その場合このままで問題ないはず
0053以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:21:49.463ID:ksdGCsji0
>>50
そうだね
>>29あらためて読むと最後の行削除があるなら
切り取りじゃなくてコピーにして
同じ条件で処理だけ行削除に
変えてやればいいから簡単になるよ
0058以下、5ちゃんねるからVIPがお送りします
垢版 |
2022/11/22(火) 23:51:38.067ID:sBBUOqEuM
悔しいです!!!
■ このスレッドは過去ログ倉庫に格納されています

ニューススポーツなんでも実況