2016-05-20 8 views
0

に貼り付けるマクロ...エクセルVBA私が先行謝罪セルをコピーして別の

私は熱心なExcelのユーザーですが、VBAで熟練していません。どんな助けもありがとうございます。

  1. 私はDDMMYYYY形式で入力するユーザが日付を必要としています。
  2. そのddmmyyyy情報に基づいてブックを開きます(ファイル名と連結します)。
  3. そのブックの特定の範囲(AN1:AS1)のセルをコピーします。
  4. コピーしたセルを別のブックに貼り付けます。ユーザーが入力した日付の横に貼り付けます。

ここで私はこれまで試したコードです:

dim input as string 
input = inputbox("Insert date in format ddmmyyyy") 
Workbooks.open (""\\vmp-avayaacc\reports\servicedesk\Josh\Agent By Skillset Performance" & input & "1155.csv"") 
Workbooks("(""\\vmp-avayaacc\reports\servicedesk\Josh\Agent By Skillset Performance" & input & "1155.csv"")).Worksheets("Sheet1").Range("AN1:AS1").Copy _ 
    Workbooks("http://sharepoint.coh.org/SiteDirectory/ITS/BO/Dashboard.xls").Worksheets("Sheet1").Range("A1") 

は、誰かが私はこの作品を作る助けることはできますか?ありがとうございました。

+1

(inputbox( "日付をddmmyyyy形式で挿入する)"、 "ddmmyyyy") '形式を強制します。 – BruceWayne

答えて

0

コピーこのマクロ有効ワークシートのVBAウィンドウにコードのいずれかF5ボタンまたは他の制御対象へのマクロとして、それを実行するか、または割り当てる: `入力=テキストを試してみてください、あなたの入力のために

Public Sub CopyCells() 
     Dim wkb   As Excel.Workbook 
     Dim wks   As Excel.Worksheet 
     Dim wkb2  As Excel.Workbook 
     Dim wks2  As Excel.Worksheet 
     Dim strMSG  As String 

     strMSG = InputBox("Insert date in format ddmmyyyy") 

     Set wkb = Excel.Workbooks.Open("\\vmp-avayaacc\reports\servicedesk\Josh\Agent By Skillset Performance" & strMSG & "1155.csv") 

     Set wkb2 = Excel.Workbooks.Open("http://sharepoint.coh.org/SiteDirectory/ITS/BO/Dashboard.xls") 

     Set wks = wkb.Worksheets("Sheet1"): wks.Activate 

     wks.Range("AN1:AS1").Copy 

     Set wks2 = wkb2.Worksheets("Sheet1") 

     wks2.Range("A1").PasteSpecial xlPasteAll 

     Set wks = Nothing: Set wkb = Nothing 

     set wks2 = nothing: set wkb2 = nothing 
    End Sub 
+0

これは、set wks2 = wkb2.worksheets( "sheet1"):wks.activateという行に移動します。 "sheet1"はタブの名前ですか?そうであれば、それは「ACDデータ」と呼ばれます。私はそこに置いて、ランタイムエラー '91'を示すエラーを取得します。オブジェクト変数またはWithブロック変数メモセット。お知らせ下さい。 –

+0

はい「シート1」は仮定であり、既定のワークシートの名前でした。シート1をデータが* *になるワークシートの名前に置き換え、値が引用符で囲まれていることを確認する必要があります。 – Sorcefyre

0

あなたはRange("A2")への最後の行を変更することができます

Workbooks(""\\vmp-avayaacc\reports\servicedesk\Josh\Agent By Skillset Performance" & input & "1155.csv"").Worksheets("Sheet1").Range("AN1:AS1").Copy _ 
Workbooks("http://sharepoint.coh.org/SiteDirectory/ITS/BO/Dashboard.xls").Worksheets("Sheet1").Range("A2") 

をそしてセルA1にその前に日付を追加:

Workbooks("http://sharepoint.coh.org/SiteDirectory/ITS/BO/Dashboard.xls").Worksheets("Sheet1").Range("A1").Value=input 

・ホープ、このことができます。

関連する問題