• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:excel、マクロの質問です)

Excelマクロの使い方と詳細ファイルへのリンク

このQ&Aのポイント
  • Excelマクロ初心者が質問します。フォルダ内の一覧ブックと詳細ブックがあります。詳細ボタンを作成し、クリックすると詳細ファイルにジャンプしたいです。保存場所を変更しても動作するようにする方法を教えてください。
  • Excelマクロ初心者です。フォルダ内に一覧ブックと詳細ブックがあります。詳細ボタンを作成し、クリックすると詳細ファイルにジャンプしたいです。保存場所を変更しても動作するようにする方法を教えてください。
  • Excelマクロの質問です。フォルダ内に一覧ブックと詳細ブックがあります。詳細ボタンを作成し、クリックすると詳細ファイルにジャンプしたいです。保存場所を変更しても動作するようにする方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

マクロの動いているブックのフォルダは パス = ThisWorkbook.Path で求められますので Workbooks.Open ThisWorkbook.Path & "\詳細.xlsx" でいけます

sei_s95
質問者

お礼

できました!! ありがとうございました!!!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセル2007のマクロについて

    実践で学ぶ Office Excel 2007 VBAというマクロの学習サイトで Sub Macro実践1() 'ブック シート セルアドレスを指定すればブック シートをアクティブにする必要はない             Workbooks("転記.xlsx").Worksheets("転記シート1").Range("A1").Value = _               Workbooks("データ.xlsx").Worksheets("データ1").Range("A1").Value                 End Sub         と入力すると「インデックスが有効範囲にありません」となってしまいます。なにか間違っているのでしょうか?

  • VBA VLOOKUPとセルのコピーができません

    助けてください マクロでVLOOKUPを使い、データを持ってこようとしてますが上手くいきません やりたいこと:Sheet3(在庫を貼付)にある4列目の数値を、Sheet1のG列で照合し、Sheet1の9列目に持ってきたい Sheet1:cells(6,9)にVLOOKUPの式を入れる 関数で言えば=VLOOKUP($G,Sheet3!C:F,4,FALSE) cells(6,9)をcells(7,9)からcells(2000,9)までコピー これを実行すると 「アプリケーション定義またはオブジェクト定義のエラーです。」 とでて止まってしまいます ActivesheetsやWorkbooks、WorksheetsやSheetsで設定したりしてもエラーは変わりますが 止まってることには変わりありません どうしたら動くようになりますか? Sub vlook() Dim Nname As String macx = "ルーチンワーク20130223.xlsm" 'マクロ用ファイル「ルーチンワーク20130223.xlsm」がある Sheets(1).Select Workbooks(macx).Activate Worksheets(1).Activate ddir = Cells(33, 2) 'cells(33,2)にフォルダ情報がある Nname = Dir(ddir & "在庫推移.xlsx") '在庫推移.xlsxというVLOOKUPしたいファイルがある Workbooks.Open Filename:=ddir & Nname Workbooks(Nname).Activate Sheets(1).Select Worksheets(1).Activate 'VLOOKUPで在庫を持ってくる ActiveCell.FormulaR1C1 = "=VLOOKUP(RC7,'在庫を貼付'!C[-6]:C[-3],4,FALSE)"   '自動記録マクロから持ってきてます Worksheets(1).Activate Sheets(1).Select Range(Cells(6, 9)).Copy Destination:=Sheets(1).Range(Cells(7, 9)) 'この行でエラーが出る

  • マクロを教えてください

    同じフォルダ内にあるXlsブックのあるSheetのデータを他のBookにコピーして貼り付けて貼り付けた側のBookで加工したいのですがうまくマクロが組めません。 Bookを共有で使っているので困っています。 Sub ワードアート1_Click ' ActiveWindow.ScrollWorkbookTabs sition:=xlLast Workbooks.Open ("販売管理表み.xls") Sheets("在庫一覧").Select Cells.Select Range("A1").Activate Selection.Copy Windows("完成在庫.xls").Activate Sheets("完成在庫一覧").Select Range("A1").Select ActiveSheet.Paste End Sub って書いてみましたが、Workbooks…のところでエラーになってしまいました。(TOT)初心者ですみません。教えてください。

  • エクセル 保存是非のダイアログを出さずに保存VBA

    エクセル 保存是非のダイアログを出さずに保存VBA エクセルファイルの ひとつのブック L.xlsxの特定のセルを 別のブックR.xlsxのセルにコピーするを VBAコードで コピーまでは出来たのですが R.xlsxのブックを保存するかどうかの ダイアログが出てしまいます これが出ないで保存できるように ActiveWorkBook.Save これを入れてもやはり保存是非の確認が 出てしまいます コードは -------------------- Sub ID移動() Dim x As Workbook Dim y As Workbook Workbooks.Open Filename:="C:\Users\USER\Desktop\ACCESS\L.xlsx" Set x = Workbooks("L.xlsx") Workbooks.Open Filename:="C:\Users\USER\Desktop\ACCESS\R.xlsx" Set y = Workbooks("R.xlsx") y.Sheets("sheet1").Range("A2") = x.Sheets("output").Range("B2") x.Close y.Close ActiveWorkBook.Save End Sub ------------------ 保存是非のダイアログがでないで 保存できるための方法を 御教示いただけますか win10 office365 すみませんが 宜しくお願い致します

  • EXCEL VBA のブック操作

    完全に自己流でEXCEL2000のVBAを作成しています。 とても単純な操作なのですが、思い通り動きません。 どうかご教授ください。 よろしくお願いします。 Main ファイルとSubファイルがあります。【パス名とファイル名は指定済み】 ブック内のシートの構成は全く同じになっています。 (MainファイルのVBAを実行後Subファイルが作成されます ファイル名は作成日を入れて保存していっています。) それで以前作成したデータを利用するために、 MainファイルのVBAを実行中にSubファイルを開き参照したいシートを Mainファイルにコピーし、Subファイルを閉じたいのですが フォーカスがうまくいかず、Mainファイルが閉じてしまいます。 何がおかしいのでしょうか? Workbooks.Open Filename:=SubFile Sheets("Sheet1").Select Worksheets("Sheet1").Name = "ASheet" Sheets("ASheet").Copy After:=Workbooks(MainFile).Sheets(TotalSheet) Workbooks(SubFile).Activate ActiveWorkbook.Close Workbooks(MainFile).Activate Sheets(TsumSheet).Select オープンしてコピーまではできているのですが・・・

  • エクセルVBA ファイル名操作

    エクセルマクロのコードにおきまして 「フォルダの選択」ダイアログから エクセルファイル 123.xlsxを例えば 開くときに それをa.xlsxという名前に変えて 以下のそれに続くVBAコードにおいて a.xlsxを操作したいのですが、 a = Application.GetOpenFilename() Workbooks.Open a これを実行すると求めるダイアログが表示されて 使いたい123.xlsxを開くをクリックしますが これでは123.xlsxがa.xlsxにはなりません このa.xlsxのファイル名で別途ファイル作成する方法を 御教示いただけると助かります よろしくお願いします win10 office365 コードは以下 部分ですが こういう流れで作成したい所存です Sub あいう() a = Application.GetOpenFilename() Workbooks.Open a 'b.xlsxファイルを新規作成 Workbooks.Add ActiveWorkbook.SaveAs Filename:="C:\Users\USER\Desktop\あいう\b.xlsx", FileFormat:=xlXMLSpreadsheet 'a.xlsxファイルの1行目のA1~AG1のセルの値をコピー Workbooks("a.xlsx").Worksheets("Sheet1").Range("A1:AG1").Copy 'b.xlsxファイルのA3~AG3のセルに貼り付け Workbooks("b.xlsx").Worksheets("Sheet1").Range("A3:AG3").PasteSpecial xlPasteValues 以下省略 よろしくお願いします

  • エクセル マクロ こんな事出来ますか?

    エクセル2010を使っています。 ボタンクリックでAと言うファイルをオープンさせているのですが、使うシーンで元々開いていたり、閉じていたりします。 それで、目的のファイルが開いていた場合は次の動作に移りたいと思います。 現在のマクロは以下の様なものです、これでもちろん動作しています。 Sub ボタン15_Click() Workbooks.Open "目的のファイルの場所" Windows("A.xlsm").Activate Sheets("Sheet4").Select Range("aa3").Select End Sub Aのファイルが開いていない場合、Aを開く。 Aのファイルが開いている場合 Windows("A.xlsm").Activate を実行したいと言う事です。 詳しい方、よろしくお願い致します。

  • エクセル マクロについて

    Book1で入力データ作成し、保存次第、添付画像の黄色部分に、自動転記する様マクロを組みたいと考えています。 現在、勉強中で、簡単な下記の様なマクロはできました。 これを応用して実践してみたいのですが、何を加えればよいのか、アドバイス頂けたら幸いです。 --------- Sub Macro1() ' ' Macro1 Macro ' ' a = ActiveCell.Value Range("A2").Select ChDir "C:\Users\takana\Desktop" Workbooks.Open Filename:="C:\Users\takana\Desktop\転記.xlsx" Sheets("Sheet2").Select ActiveCell.FormulaR1C1 = "" Range("B2").Select ActiveCell.FormulaR1C1 = a Range("B3").Select End Sub -----------

  • エクセル2000でマクロを作成するのに困っています。

    エクセル2000でマクロを作成するのに困っています。 ↓やりたいこと (1)データを一行コピーする (2)別のファイルを開いて、データを値貼り付けする。  ※値を貼り付けるのは、空白のセルに。 (同じように下の列に値貼りつけを順次行い、データを作成する) ----------------------------------------------------------------------------------------- Sub Macro1() ' ' Aファイルの1行をBファイルのA列が空欄の行へ貼りつけ' 'シートの選択' Worksheets("Sheet3").Activate '行を選択コピー' Sheets("Sheet3").Rows("2:2").Select Selection.Copy 'ファイルを開く' Workbooks.Open Filename:="C:\Documents and Settings\hiro\デスクトップ\Book2.xls" 'ファイル選択' Windows("Book2.xls").Activate 'シートを選択しA列が空欄のセルに貼りつけ' Sheets("Sheet2").Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues Application.CutCopyMode = False 'ファイルオープン時のシートを選択' Worksheets("Sheet1").Activate 'ファイルを閉じる' ActiveWorkbook.Close SaveChanges:=True '元ファイルに戻る' Windows("100520_一覧.xls").Activate End Sub -------------------------------------------------------------------------------------------- 2003ではうまくいきますが、会社のPCが2000のためか、下記文言でエラーがでます。 'シートを選択しA列が空欄のセルに貼りつけ' Sheets("Sheet2").Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues Application.CutCopyMode = False ●エラー表示   438 プロパティまたはメソッドをサポートしてません。 どのように入力すればよいでしょうか。 マクロを今まで一度も作ったことがわからないので、本当にわかりません。 よろしくお願いいたします。

  • 【Excel】マクロのエラー

    先日、ここで質問させていただきながら、複数のファイルの全シートから、会社名と金額を取り出して、一覧表を作成するマクロを作りました。(Excel2003使用) この複数のファイルと一覧表は同じフォルダに入っているのですが、一覧表が4種類あるので、そのフォルダ内に『一覧表』という名前のフォルダを作って、その中に4つの一覧表を移動しました。 その後、マクロを実行すると時々「ファイルが見つからない」といった内容のエラーが出るようになったのですが、一旦、中止して一覧表の元になるファイルを1つ開いて何もせずにそのまま閉じた後、再度マクロを実行するとエラーは出ません。 このエラーは、やはり『一覧表』フォルダを作って移動させたことが原因でしょうか?また、このエラーが出ないようにする方法はあるのでしょうか? コードは下記のようになっていて、“ファイル名”というシートに一覧表の元になる複数のファイル名が入力してあります。 Sub LISTOUT() OUT_LINE = 1 MY_BOOK = ActiveWorkbook.Name Sheets("ファイル名").Select For FILE_GYO = 2 To Cells(2, 1).End(xlDown).Row Sheets("ファイル名").Select FILE_NAME = Cells(FILE_GYO, 1) Workbooks.Open Filename:=FILE_NAME OPEN_BOOK = ActiveWorkbook.Name SHEET_SU = Sheets.Count For i = 1 To SHEET_SU Sheets(i).Select CODE_NO = ActiveSheet.Name KAISHAMEI = Cells(2, 3) TSUKIKEI = Cells(1, 23) RUIKEI = Cells(1, 25) Workbooks(MY_BOOK).Activate Sheets("一覧表").Select OUT_LINE = OUT_LINE + 1 Cells(OUT_LINE, 1) = CODE_NO Cells(OUT_LINE, 3) = KAISHAMEI Cells(OUT_LINE, 4) = TSUKIKEI Cells(OUT_LINE, 6) = RUIKEI Workbooks(OPEN_BOOK).Activate Next ActiveWorkbook.Close Next End Sub マクロに関しては初心者ですので、詳しく教えていただけると助かります。

専門家に質問してみよう