|    | 
     ▼β さん: 
 
こんにちは。先日は色々教えて頂きありがとうございました。あの後実証してみる時間がなくて、最近やっと時間ができましたので、頂いたコードを動かしてみました。最初のサンプルは動作が確認できたのですが、2つ目の方はエラーは出ないのですが、転送先のシートに何も表示されません。そこで、質問があるのですが、 
 
>  shT.Range("A1:F1").Formula = ref & "A2" 
>  shT.Range("A2:F2").Formula = ref & "A9" 
>  shT.Range("A1:F2").Value = shT.Range("A1:F2").Value 
 
の部分は、左側で指定したセル範囲に右側のA2のFormulaをコピーし、 
右側のセル範囲の値を左側で設定したシートのセル範囲にコピーするということであってますでしょうか? 
お時間のある時にお返事頂ければ幸いです。 
よろしくお願い致します。 
 
 
>▼ayu さん: 
> 
>もう1つ。 
>転記レイアウトは アップ済みのものとはかえてあります 
>外部参照数式を使い、ブックを開かないタイプ。 
>処理上もループをなくしてあります。 
>元ブックのフォルダは、アップ済みのもの同様、マクロブックと同じフォルダにしてあります。 
> 
>Sub Sample2() 
>  Dim fPath As String 
>  Dim ref As String 
>  Dim shT As Worksheet 
>  Dim r As Range 
>   
>  fPath = ThisWorkbook.Path 
>  ref = "='" & fPath & "\[元のブック.xlsx]該当のシート名'!" 
>  Set shT = ThisWorkbook.Sheets("転記先のシート名") 
>  shT.Cells.ClearContents   '転記前にクリア 
>  shT.Range("A1:F1").Formula = ref & "A2" 
>  shT.Range("A2:F2").Formula = ref & "A9" 
>  shT.Range("A1:F2").Value = shT.Range("A1:F2").Value 
>   
>  With shT.Range("A2:F2") 
>    .Replace 0, Empty, xlWhole 
>    On Error Resume Next 
>    .SpecialCells(xlCellTypeBlanks).EntireColumn.Delete 
>    On Error GoTo 0 
>  End With 
>   
>End Sub 
 | 
     
    
   |