- ベストアンサー
エクセルマクロ ヘッダーに図挿入 フルパスに変数
- エクセルのマクロについての質問です。基本的な事ですみません。
- 同じフォルダ内に、エクセルAと画像Bがあります。エクセルAの特定シートから新規にシートaをマクロで作ります。新規シートaの印刷設定で、右ヘッダーに画像Bを入れます。
- フォルダの場所が不特定なので、フルパスに変数を使用した指定方法を試していますが、うまくいきません。具体的な記述方法が分かる方、ご教示いただけないでしょうか。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
関連するQ&A
- エクセルのヘッダーを変数で指定したい
マクロで、エクセルのヘッダー部に日付を表示させたいのですが、当日日付を表示させるのではなく、任意の日付を表示させようと考えています。 ヘッダー部のマクロ With ActiveSheet.PageSetup .RightHeader = "&""MS 明朝,太字""&12" & w_date & "現在" End With と記述し、実行結果を印刷プレビューで見ると、ページいっぱいに日付が表示されてしまいます。 文字の大きさを指定しない場合の記述 With ActiveSheet.PageSetup .RightHeader = "&""MS 明朝,太字""" & w_date & "現在" End With これだと、正しく右側に"yyyy/mm/dd現在"と表示されます。 ヘッダー部の右側に文字の大きさを指定した上で、正しく表示させるにはどのように記述すればいいでしょうか? ご教授、よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excelのヘッダー表示を変数で指定する場合
こんにちは。 Excel2000を使用しています。 マクロで、印刷時のヘッダーに変数を指定したいのですが、フォントやサイズも指定しようとするとうまく出来ません。 [現在の記述] With ActiveSheet.PageSetup .RightHeader = 変数A .RightHeader = "&""明朝,標準" End With この場合、後に記述したRightHeaderが有効になるため、結果として、ヘッダーには文字列が何も無い状態になります。逆にすれば、変数Aの内容は表示されるものの、フォントはデフォルトのものになってしまいます。 単に文字列を表示させたいなら .RightHeader = "&""明朝,標準""&11文字列" でOKだと思うのですが、これが変数となると、どうやって記述すればいいのか判らないのです。 どなたかご存知でしたら教えてください。
- ベストアンサー
- オフィス系ソフト
- エクセルのマクロについて
エクセルの印刷マクロを作りましたが、動作が非常に遅いのです。 スタッフ用と管理者用のマクロを作り、スタッフ用が遅いのです。 余計なものが含まれているのでしょうか? お願いします。 Sub スタッフ() ' スタッフ Macro ActiveSheet.PageSetup.PrintArea = "$A$1:$AJ$55" With ActiveSheet.PageSetup .PrintTitleRows = "" .PrintTitleColumns = "" End With ActiveSheet.PageSetup.PrintArea = "$A$1:$AJ$55" With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" .LeftFooter = "" .CenterFooter = "" .RightFooter = "" .LeftMargin = Application.InchesToPoints(0) .RightMargin = Application.InchesToPoints(0) .TopMargin = Application.InchesToPoints(0) .BottomMargin = Application.InchesToPoints(0) .HeaderMargin = Application.InchesToPoints(0) .FooterMargin = Application.InchesToPoints(0) .PrintHeadings = False .PrintGridlines = False .PrintComments = xlPrintNoComments .CenterHorizontally = True .CenterVertically = True .Orientation = xlLandscape .Draft = False .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = 76 .PrintErrors = xlPrintErrorsDisplayed End With ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True ActiveSheet.PageSetup.PrintArea = "$A$1:$AJ$60" With ActiveSheet.PageSetup .PrintTitleRows = "" .PrintTitleColumns = "" End With ActiveSheet.PageSetup.PrintArea = "$A$1:$AJ$60" With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" .LeftFooter = "" .CenterFooter = "" .RightFooter = "" .LeftMargin = Application.InchesToPoints(0) .RightMargin = Application.InchesToPoints(0) .TopMargin = Application.InchesToPoints(0) .BottomMargin = Application.InchesToPoints(0) .HeaderMargin = Application.InchesToPoints(0) .FooterMargin = Application.InchesToPoints(0) .PrintHeadings = False .PrintGridlines = False .PrintComments = xlPrintNoComments .CenterHorizontally = True .CenterVertically = True .Orientation = xlLandscape .Draft = False .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = 70 .PrintErrors = xlPrintErrorsDisplayed End With Range("A1").Select End Sub
- ベストアンサー
- オフィス系ソフト
- エクセルのヘッダーのことで質問です。
このサイトで学習して、とあるエクセルシートに"A1"セルの内容を そのまま書き込むマクロを造りました。 With ActiveSheet.PageSetup 'セルA1の値をへッター左にセットする LeftHeader = Range("A1") End With ですが、ここに"A1"と"B1"をセットすると言うふうにするには? あるいは"A1"セルと定数”御中”を一緒にセットさせるにはどのように記述したらよいでしょうか。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルVBAで複数の変数に、パス、ファイルを格納しOpenする方法
よろしくお願いします。 環境:Excel2003 以下のような形でファイルを開きたいのですが、変数を繫げる方法がわかりません。 *A1はファイルへのパス *A2はファイル名 hoge_path = ActiveSheet.Range("A1").Value hoge_filename = ActiveSheet.Range("A2").Value Workbooks.Open hoge_pathとhoge_filenameを繫げた変数 また、ファイル名がaaの場合、aa*.xls(aabb.xlsやaa1111.xls)も開ける形にもしたいと思っています。 よろしくお願いいたします。
- 締切済み
- その他MS Office製品
- Excel ヘッダーの改行反映について
いつもお世話になっております。 Excel VBAにて困っております。ご存知の方、お力添えお願い致します。 質問は、ExcelのVBAにてヘッダー内に改行を含む文字列を代入しています。 更新後開いてみると、改行が上手く反映されず文字が重なっている状態となります。 尚、クリックし一度修正モードにすると改行します。 また、ヘッダーを更新したいExcelは、マクロが起動しているExcelとは別のExcelとなります。 何か更新の仕方を誤っているのでしょうか。 ご教示お願い致します。 具体的な内容は以下の通りです。 OS Windows7、Excel2010 シートの回数ループしヘッダーを更新しております。 With wb.Sheets(i).PageSetup .RightHeader = "&R" & fild1 & fild2 & vbCr & "&R" & filename1 & "&A" End With それではどうぞ宜しくお願い致します。
- ベストアンサー
- Excel(エクセル)
- エクセルVBAで、画像の挿入をしたいと思っています。
エクセルVBAで、画像の挿入をしたいと思っています。 シート名は左から まとめ、A、B、C、まとめ(1)、A(1)、B(1)、C(1)、まとめ(2)、A(2)、B(2)、C(2) と、あるとして、任意のフォルダの中にある画像(*.jpgが9枚)を昇順でひとつずつA、B、C、A(1)、B(1)…C(2)シート(まとめ以外のシート)の指定のセルに貼付けられないかと考えています。 画像の名前は任意で、001.jpgはA、002.jpgはB、…009.jpgはC(2)と画像は昇順に、シートは左からというルールは変わらないとして、どのようにVBAを組んでいけばよいでしょうか。 どうぞご教授お願いします。
- ベストアンサー
- オフィス系ソフト
- エクセルに画像挿入
以前の投稿で下記のようなVBAを拝見しました。 実行するとA列に画像ファイル名、B列に画像が縦に配置されます。 これを横に配置するにはどうすればいいのでしょうか? 初心者なので質問不足かもしれませんがよろしくお願いします。 Sub PictAdd() Dim pict As Shape, r As Range With Application.FileSearch .NewSearch .LookIn = ThisWorkbook.Path .SearchSubFolders = False .Filename = "*.jpg" If .Execute() > 0 Then For i = 1 To .FoundFiles.Count Set r = ActiveSheet.Range("B" & i) Set pict = ActiveSheet.Shapes.AddPicture _ (.FoundFiles(i), msoTrue, msoFalse, _ r.Left, r.Top, r.Width, r.Height) pict.OnAction = "PictClick" r.Offset(0, -1).Value = Dir(.FoundFiles(i)) Next i End If End With Columns(1).EntireColumn.AutoFit End Sub
- ベストアンサー
- Visual Basic
- エクセルVBAで、図の挿入をして図のフルパスを取得したい
Excel97, Windows98SEを使用しています。 写真パス = Application.GetOpenFilename ActiveSheet.Pictures.Insert(写真パス).Select で、図の入っているフルパスを取得して、挿入しているのですが、 これだと図のファイルを選択する際にプレビューが出てきません。 「図の挿入」ダイアログから図を挿入し、その図のフルパスを 取得できる方法がありましたら教えて下さい。 よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- エクセル ヘッダーにセルの値について教えて下さい
エクセルで見積書を作成しています。 シート1を表紙、シート2を内訳書としています。 シート1のC1セルに打ち込んだ物件名をシート2のヘッダーになるよう設定したいのですが、 Private Sub Workbook_BeforePrint(Cancel As Boolean) ActiveSheet.PageSetup.leftheader = Range("sheet1!C1").Value End Sub VBEのThisWorkbookに上記を貼付けたところシート2のヘッダーに物件名を表示できましたが、シート1のヘッダーにも出てしまいます。 シート2にのみ表示させる方法ってあるのでしょうか?
- ベストアンサー
- その他MS Office製品
- Thinkpad X1 Carbon 3TH(2015)のバッテリーが消耗し、パソコンの動作が重くなった。
- CPU速度が0.79GHz/2.39GHzまで低下している。
- 新しいパソコンの納期が遅れているため、現状での使用を続けているが、アダプタを購入することで問題を解決できる可能性がある。
お礼
ありがとうございました! 本当に助かりました!