Excel VBA質問箱 IV

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

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


2175 / 13645 ツリー ←次へ | 前へ→

【69517】マクロをVBAに MOKO 11/7/27(水) 14:38 質問[未読]
【69521】Re:マクロをVBAに Jaka 11/7/27(水) 16:02 発言[未読]
【69551】Re:マクロをVBAに 解読不能 11/7/31(日) 19:08 回答[未読]
【69552】Re:マクロをVBAに 無意味 11/7/31(日) 19:19 発言[未読]

【69517】マクロをVBAに
質問  MOKO  - 11/7/27(水) 14:38 -

引用なし
パスワード
   今仕事で以下のようなマクロを利用しています。
ただ、重くなりすぎていて使いにくいということで、VBAでやれれば軽くなるというアドバイスをもらいました。
ただ、私の力では作成が難しいので、これをVBAにしていただければと思い投稿させていただきました。
よろしくお願いします。

Range("C12").Select
    ActiveCell.FormulaR1C1 = "=IF(RC1="""",,MIN(MAX(R11C,VLOOKUP(R7C2&RC1,date!C1:C8,6,FALSE)),
VLOOKUP(R7C2&RC1,date!C1:C8,7,FALSE))-
MAX(MIN(R9C,VLOOKUP(R7C2&RC1,date!C1:C8,7,FALSE)),
VLOOKUP(R7C2&RC1,date!C1:C8,6,FALSE)))"
    
  Range("C12").Select
  Selection.AutoFill Destination:=Range("C12:R12"), Type:=xlFillDefault
   
  
  Range("V12").Select
    ActiveCell.FormulaR1C1 = "=IF(RC1="""",,VLOOKUP(R7C2&RC1,date!C1:C8,8,FALSE))"
    
  Range("U12").Select
    ActiveCell.FormulaR1C1 = "=IF(RC1="""",,VLOOKUP(R7C2&RC1,date!C1:C9,9,FALSE))"
 
  Range("B12").Select
   ActiveCell.FormulaR1C1 = "=IF(RC[-1]="""","""",VLOOKUP(RC[-1],date!C[2]:C[3],2,FALSE))"


   Range("B12:W12").Select
  Selection.Copy
  Range("B13:B69").Select
  ActiveSheet.Paste

【69521】Re:マクロをVBAに
発言  Jaka  - 11/7/27(水) 16:02 -

引用なし
パスワード
   提示されたコードがすでにVBA(マクロ)なんですけど。
再計算を一時とめてみました。
ただ、それほど早くはならないだろうし、再計算をとめる事で計算順序が変わることがあるだろうか?は、今まで調べたことがないのでなんとも?
不安なら、数式を書き込む範囲ごとに手動、自動を分けてみるとか。

FstCal = Application.Calculation
Application.Calculation = xlManual

Range("C12").FormulaR1C1 = "=IF(RC1="""",,MIN(MAX(R11C,VLOOKUP(R7C2&RC1,date!C1:C8,6,FALSE)),
VLOOKUP(R7C2&RC1,date!C1:C8,7,FALSE))-
MAX(MIN(R9C,VLOOKUP(R7C2&RC1,date!C1:C8,7,FALSE)),
VLOOKUP(R7C2&RC1,date!C1:C8,6,FALSE)))"
    
  Range("C12").AutoFill Destination:=Range("C12:R12"), Type:=xlFillDefault
  
  Range("V12").FormulaR1C1 = "=IF(RC1="""",,VLOOKUP(R7C2&RC1,date!C1:C8,8,FALSE))"
    
  Range("U12").FormulaR1C1 = "=IF(RC1="""",,VLOOKUP(R7C2&RC1,date!C1:C9,9,FALSE))"
 
  Range("B12").FormulaR1C1 = "=IF(RC[-1]="""","""",VLOOKUP(RC[-1],date!C[2]:C[3],2,FALSE))"

Application.Calculation = xlAutomatic
Application.Calculation = FstCal
Doevents

  Range("B12:W12").Copy
  Range("B13:B69").PasteSpecial

【69551】Re:マクロをVBAに
回答  解読不能  - 11/7/31(日) 19:08 -

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

サロンのアップルさんに聞いたら早いですよ

【69552】Re:マクロをVBAに
発言  無意味  - 11/7/31(日) 19:19 -

引用なし
パスワード
   ▼解読不能 さん:

その発言何の意味があるの?
正に解読不能。
ふっかけたのは、あ・な・た!

もしかして、粘着質?

とても迷惑なので、二度とこないで。

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