|    | 
     WinXP Excel2000 
 
顧客情報のデータベースとして使用しているファイルがあり、 
フォーム上で情報の登録/変更/削除を行っております。 
 
フォーム上に表示されている情報を印刷する時、 
印刷ボタン(フォーム上に印刷用コマンドボタンを配置)を押して、 
フォーム自体(PrintFormを使用)を印刷しておりました。 
 
しかし、PrintFormでは、印刷設定が出来ず、 
また複数人が使用する為、不具合が生じておりましたので、 
フォーム表示上の情報を、新規ブックに転記する方法に変更しました。 
 
新規ブックへの転記コード自体は問題無く出来たのでですが、 
転記する情報量が多い為か、単純にコードが長い為か、 
(どちらもかも)作業完了までかなりの時間を有しております。 
 
転記コードの流れとして、 
1.新規ブック立上げ 
2.新規ブックに罫線で表を作成 
3.新規ブック表に各項目名を入力 
4.データベースファイルから新規ブックへ転記 
5.新規ブックのフォント等調整変更 
をしております。 
 
やっと本題ですが、 
4.データベースファイルから新規ブックへの転記 
のコードが、現状1つずつコピーして貼り付けるようになってますので、 
そのコードを短くできないかと考えております。 
下記に抜粋ですが、コードを示しますので。 
アドバイス等頂ければ幸いです。宜しくお願い致します。 
 
 
  Windows(exiWB).Activate  'データベースファイル選択 
  Worksheets("Sheet3").Activate  
  Sheets("Sheet3").Cells(ActiveCell.Row, 1).Select 
  Selection.Copy 
  Windows(NewWB).Activate  '新規ブック選択 
  Sheets("データ抽出").Range("B6").Select 
  Selection.PasteSpecial Paste:=xlValues 
          ・ 
          ・ 
          ・ 
          ・ 
  Windows(exiWB).Activate 
  Worksheets("Sheet3").Activate 
  Sheets("Sheet3").Cells(ActiveCell.Row, 50).Select 
  Selection.Copy 
  Windows(NewWB).Activate 
  Sheets("データ抽出").Range("H51").Select 
  Selection.PasteSpecial Paste:=xlValues 
 
 
データベースファイルのセルセレクトは、順番(1〜50)ですが、 
新規ブックの方は、規則性はあるもののランダムになってます。 
 B6/C6/D6/E6/H6,B11/C11/D11/E11/H11,B16/C16/D16/E16/H16 
 B21/C21/D21/E21/H21,B26/C26/D26/E26/H26,B31/C31/D31/E31/H31 
 B36/C36/D36/E36/H36,B41/C41/D41/E41/H41,B46/C46/D46/E46/H46 
 B51/C51/D51/E51/H51 
 | 
     
    
   |