mitarashi の回答履歴

全1833件中81~100件表示
  • Excel 埋め込みオブジェクトのファイル名取得

    Excelファイルに挿入>オブジェクト>ファイルから ・・・ で選択し、埋め込んだオブジェクトのファイル名をVBAで 取得する事はできますか? 実際には上記のように手動ではなく、 Application.Dialogs(xlDialogInsertObject).Show , " ", , True でダイアログを表示し、ファイルを選択させています。 埋め込んだファイルがフォルダ階層が深かったりすると、 ファイル名まで表示されないので、ファイル名を取得して、 別のセルに入力するまでをVBAで処理をしたいと考えています。 既に埋め込まれているオブジェクトの名前を取得する、もしくは ダイアログで選択されたファイルの名前を取得する、ということが できるのであれば教えていただけますでしょうか?

  • Excel 埋め込みオブジェクトのファイル名取得

    Excelファイルに挿入>オブジェクト>ファイルから ・・・ で選択し、埋め込んだオブジェクトのファイル名をVBAで 取得する事はできますか? 実際には上記のように手動ではなく、 Application.Dialogs(xlDialogInsertObject).Show , " ", , True でダイアログを表示し、ファイルを選択させています。 埋め込んだファイルがフォルダ階層が深かったりすると、 ファイル名まで表示されないので、ファイル名を取得して、 別のセルに入力するまでをVBAで処理をしたいと考えています。 既に埋め込まれているオブジェクトの名前を取得する、もしくは ダイアログで選択されたファイルの名前を取得する、ということが できるのであれば教えていただけますでしょうか?

  • 複数シートからの抽出

    お世話になっております。 エクセル初心者です。簡単な関数は理解しておりますが、マクロはネットでコピペして加工して使っている程度です。 画像はサンプルです。 シートは50以上あります。 検索用の別シートを作り、検索用シートのA1に現場名を入力し、B1に本支店名を入力し、A2以降に検索結果を抽出し表示したいのです。抽出されるのは、現場名・本支店名・距離のみに限定したいです。 複数シートからの抽出と複数条件ということは可能でしょうか? そのあとはダブルクリックイベントで距離を利用しようと思っているのですが、そちらは自力でできそうです。 皆様からご教示頂きたく存じます。 宜しくお願い致します。

  • エクセルVBA 図のコピー&ペーストの方法

    いつもお世話になっております。 VBAを学習中の者です。 今回は図のコピー&ペーストについて教えてください。 (作成中の表:Excel2010を使用) (1)Sheet1:帳票一覧  A列:NO B列:氏名 C列:写真 D列:プロフィール  のような表を行毎に作成しています。   (2)Sheet2:個別帳票雛形  マクロの実行により、雛形シートをコピーして、配列に格納したデータをコピーしたシートの指定箇所に転記 簡単に説明するとこのような作業を行いたいと考えています。 現在写真以外の転記については問題無く処理が行えました。 (仕様) 1.写真には01,02,03,04・・・・・と名称を付けております。 2.転記先シートのB4~C12セルを結合して写真の貼付エリアとしています。 3.転記時に画像データのサイズを自動調整(又は貼付エリアに見栄えよく貼れるように数値を指定) 4.貼付エリアの中央にくるように配置 以上を行いたいと思っております。 どうぞよろしくお願いします。 、

  • Excelからmdbに接続してデータを取りたい

    Excel、ACCESSの2003を使用しています Excel側でマクロを動かしたら、mdbよりデータを取得したいのですが、うまく行きません。 Const cnsADO_CONNECT1 = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" Const cnsADO_CONNECT2 = "パス名\ファイル名.mdb" Public Sub main接続処理() dbCon.Open cnsADO_CONNECT1 & cnsADO_CONNECT2 strTableName = "テーブル" & "." strDate = "20140905"  'テスト用 strSQL = "SELECT " strSQL = strSQL & strTableName & "日時" strSQL = strSQL & vbNewLine & "FROM " & strTableName '''ここまでなら問題なく動く''' strSQL = strSQL & vbNewLine & "WHERE (((" & strTableName & ".日時)" strSQL = strSQL & " Like " strSQL = strSQL & """" strSQL = strSQL & strDate & "*" strSQL = strSQL & """" & "));" '''ここの処理がおかしい''' End Sub ACCESSのSQLビューではstrSQLの内容で該当するデータを表示できるのですが、Excel経由だと、データが1件も表示されません。 mdb側では「日時」フィールドはテキスト型で西暦+月日+時間の12文字で入っています。 201409051300 201409051310 201409051320.... 日付単位で抜き出したいので「20140905*」の型にしているのですが、うまく抽出できません。 ちなみにstrDateを「201408241300」にしてLike *を抜くと該当データが1件抽出されます。 Likeの処理が悪いのでしょうか?それともデータ型のせいでしょうか? 分かる方が居ましたら教えてください、宜しくお願いします。

  • excel vba セルにマウスをのせて写真表示

    excel2003を利用しています。 技術的に可能か、どうかわかりませんが、もし可能であれば、 どのように、記述(vba)すればよいか教えていただきたいです。 とあるセルに、写真が保管されているパスが入力されています。 そのセルにマウスカーソルを合わせると、そのアドレスに保管されている 写真がポップアップやコメントマークのような感じで、パッと表示され、 マウスカーソルを、そのセルから、外すと写真の表示が消えるようにしたいです。 もし可能であれば、教えていただけると大変ありがたいです。よろしくお願いします。

  • excel vba セルにマウスをのせて写真表示

    excel2003を利用しています。 技術的に可能か、どうかわかりませんが、もし可能であれば、 どのように、記述(vba)すればよいか教えていただきたいです。 とあるセルに、写真が保管されているパスが入力されています。 そのセルにマウスカーソルを合わせると、そのアドレスに保管されている 写真がポップアップやコメントマークのような感じで、パッと表示され、 マウスカーソルを、そのセルから、外すと写真の表示が消えるようにしたいです。 もし可能であれば、教えていただけると大変ありがたいです。よろしくお願いします。

  • excel vba セルにマウスをのせて写真表示

    excel2003を利用しています。 技術的に可能か、どうかわかりませんが、もし可能であれば、 どのように、記述(vba)すればよいか教えていただきたいです。 とあるセルに、写真が保管されているパスが入力されています。 そのセルにマウスカーソルを合わせると、そのアドレスに保管されている 写真がポップアップやコメントマークのような感じで、パッと表示され、 マウスカーソルを、そのセルから、外すと写真の表示が消えるようにしたいです。 もし可能であれば、教えていただけると大変ありがたいです。よろしくお願いします。

  • NewはCreateObjectと同じ意味?

    Sub test01() Dim objIE As InternetExplorer Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True End Sub Sub test02() Dim objIE As New InternetExplorer objIE.Visible = True End Sub この二つのコードを比較した場合、 Dim objIE As New InternetExplorer で宣言すれば、 Set objIE = CreateObject("InternetExplorer.application") がなくても、 objIE.Visible = True をしてみるとブラウザが立ち上がっているのですが、 これは NewはCreateObjectと同じ意味という事でしょうか?

  • マクロまたは他の方法でで自動転記

    現在マクロ・VBAについて独学で勉強しています。 そこで、ご存じの方いらっしゃいましたら、ご教授お願いします。 下記図1の納入先に入力したものを、自動で図2の項目に転記させたいです。 =[1]sheet1!A1 上記で、転記も考えたのですが、発注書のファイルを毎回見積番号で管理している為 いちいちファイル名を手動で変えなければならない手間があり、 他に良い方法があれば教えて頂きたいです。

  • ExcelVBAで数式の空白を返さないようにするに

    例えば、A1~A10にある値があり、B1~B10に条件があえば上から順に参照される表があるとします。(もし条件の合う値が3つあれば、B1~B3にA列の値を表示します。あわない場合は("")で空白を返します。) この場合、VBAでB列の空白を省いた最終行を取得したいのですが、 = Range("B1").End(xlDown).Row でやると、空白でも数式が入っていたら返してしまうので困っています。 何か良い方法はないでしょうか。

  • エクセル2010での質問です。

    下記のような【会社】というシートがあります。 [A社]がA1セルです。 [A社][A支店][田中][鈴木] [B社][B支店][山田][加藤] [C社][C支店][小野] [A社][D支店][島田][今田] [B社][E支店][佐藤][山本] [C社][F支店][小山][三浦] 別のシートのA1に、【会社】のシートA列の文字を重複させずにプルダウンを作成し、[A社]を選ぶと 別のシートのB1に、【会社】シートのB列を探し、A支店・D支店のプルダウンを作成し、[A支店]を選ぶと 別のシートのC1に、【会社】シートのCD列を探し、[田中][鈴木]のプルダウンを作成する。 VBAでこのようなことは出来ますか? 説明が下手で申し訳ございません。

  • エクセルマクロ配列で変数は使えますか

    エクセル2013です。 初めて配列を使います。 以下のように作成し思ったようにできました。 Sub 計算() '成功 Dim a As Integer Dim c As Integer Dim b(5) As Integer Dim 最終行 Dim 値列  値列 = 17 最終行 = Cells(Rows.Count, 1).End(xlUp).Row For 処理業 = 1 To 最終行 For a = 1 To 5 b(a - 1) = Cells(1, 値列) 値列 = 値列 + 1 Next 値列 = 17 For a = 1 To (22 - 値列) c = c + b(a - 1) Next Cells(処理業, 30) = c a = 0 c = 0 Next 処理業 End Sub ただ計算する列の範囲をインプットボックスで入力した値 にしたい為以下のように改造しました。 Dim b(対象列) As Integerでエラーになります 配列には変数は使用できないのでしょうか? よろしくお願いします。 Sub 計算() '失敗 Dim a As Integer Dim c As Integer Dim b(対象列) As Integer’★ここでERRになる Dim 最終行 Dim 対象列 Dim 値列  対象列 = 22'インプットボックスで入力した値 値列 = 17 最終行 = Cells(Rows.Count, 1).End(xlUp).Row For 処理業 = 1 To 最終行 For a = 1 To (対象列 - 17) b(a - 1) = Cells(1, 値列) 値列 = 値列 + 1 Next 値列 = 17 For a = 1 To (22 - 値列) c = c + b(a - 1) Next Cells(処理業, 30) = c a = 0 c = 0 Next 処理業 End Sub

  • エクセルマクロで計算すると遅い

    エクセル2013です。 表に対して、いろいろな処理を行い 要求された結果になるようにマクロを作成し完成しました。 思ったように動作するのですが処理時間が長すぎます。 自分で調べて、以下の部分が処理を遅くしている原因とわかりました。 ただの計算ですが、シート内に計算式や関数は残したくなくて このようにしましたが、別の方法が浮かびません。 どのような方法が有りますでしょうか? よろしくお願いします。 表は600行、50列。 17列目から49列目までの10行目から595行目までにデータがあります。 50列目は合計値用の空欄です。8行目は項目欄です。 インプットボックスは18~48までしか入力できないようにしてあります。 17列目からインプットボックスで入力した列までの合計値を インプットボックスで指定した列のひとつ前の列に1行づつ処理して転記。 17列目からインプットボックスで指定した列の1列前までまとめて列削除 その後17列目から削除され残った最終列の1列前までの合計値を最終列に転記で 1行づつ処理です。 最終列 = Cells(8, Columns.Count).End(xlToLeft).Column '8行目の最終列を取得 最終行 = Cells(Rows.Count, 1).End(xlUp).Row 'A列の最終行を取得 遅延合計欄列 = 選択列 - 1 'INPUT-BOXで選択した列の1列前の列番号を格納。この列に合計値を転記する為 遅延合計末列 = 選択列 - 2 'INPUT-BOXで選択した列の2列前を格納。ここまでの列を削除する為 Cells(8, 遅延合計欄列).Value = "遅延" 'INPUT-BOXで選択した列の1列前の列の8行目を「遅延」と転記しこの列に合計を転記する Cells(8, 遅延合計欄列).Font.Color = -16776961 Cells(8, 遅延合計欄列).Font.Size = 15 Range(Cells(10, 遅延合計欄列), Cells(最終行, 遅延合計欄列)).Interior.Color = 65535 For 計算行 = 10 To 最終行 '10行目から最終行まで繰り返す '17列目からINPUT-BOXで選択した列の1列前の列までの合計値を1列前の列に転記する。10行目から最終行まで Cells(計算行, 遅延合計欄列).Value = WorksheetFunction.Sum(Range(Cells(計算行, 17), Cells(計算行, 遅延合計欄列))) Next 計算行 Range(Columns(17), Columns(遅延合計末列)).Delete '17列目からINPUT-BOXで選択した列の2列前までを列削除 最終列2 = Cells(8, Columns.Count).End(xlToLeft).Column '8行目の最終列を取得 最終行2 = Cells(Rows.Count, 1).End(xlUp).Row 'A列の最終行を取得 For 合計行 = 10 To 最終行2 '10行目から最終行まで繰り返す '17列目から最終列の1列前までの合計数数を最終列に転記 Cells(合計行, 最終列2).Value = WorksheetFunction.Sum(Range(Cells(合計行, 17), Cells(合計行, 最終列2 - 1))) Next 合計行

  • 作成日の挿入

    Access2010を使用しています。 エクスポートするExcelファイルに画像のような作成日を入れたいのですが どの様にすればよいでしょうか?

  • エクセルマクロ インプットボックスの使い方

    エクセル2013です。 マクロの途中で作業者にマウスで列を選択してもらい その取得した列番号を使って、いろいろ処理を行うマクロを作りました。 Sub 実験() Dim マウス選択 As Range Dim 選択列 Dim 選択月表示 Dim 質問 Dim 最終列 Dim 最終行 最終列 = Cells(8, Columns.Count).End(xlToLeft).Column '8行目の最終列を取得 最終行 = Cells(Rows.Count, 1).End(xlUp).Row 'A列の最終行を取得 On Error GoTo myError Set マウス選択 = Application.InputBox("編集したい月の列を選択してください", Type:=8) 選択列 = マウス選択.Column 選択月表示 = Cells(8, 選択列).Value 質問 = MsgBox("選択した月は " & 選択月表示 & " です。いいですか?", vbYesNo) If 質問 = vbYes Then MsgBox "処理を行います" Else MsgBox "プログラムを中断します" Exit Sub End If ---処理内容---- myError: MsgBox "キャンセルが押されました。プログラム終了します。" End Sub 通常列を選択してくれればインプットボックス内には $V:$V などと表示されますが 行を選択されると $35:$35 などと表示され セルの一部を選択されると $D$40 などと表示されます。 行やセルを選択してもエラーなく最後まで進みますが選択した場所によっては とんでもない結果になってしまいます。 基本、列以外を選択したらメッセージボックスでアラームするか プログラムを停止させたいのですがどのような方法が有りますでしょうか? よろしくお願いします。

  • アクセス 複数のテキストファイルインポートについて

    アクセス VBAについてです。 DoCmd.TransferTextで複数のテキストファイル(同一フォルダの中、上から順に全て)を取り込み、 テーブル名を一つ一つ順番につけていくことは可能でしょうか?? 例 フォルダダイアログを作ってそのフォルダを指定して フォルダ名をテキストボックスに表示、 その表示されてるフォルダの中身を 別のボタンを押せばインポートできるように、 テキストファイル A1 A2 A3 A4 インポート後のテーブル名 B1 B2 B3 B4 インポート時の定義は全て同一です。 わかりにくくてすみません、 知恵を貸してください

  • アクセス 複数のテキストファイルインポートについて

    アクセス VBAについてです。 DoCmd.TransferTextで複数のテキストファイル(同一フォルダの中、上から順に全て)を取り込み、 テーブル名を一つ一つ順番につけていくことは可能でしょうか?? 例 フォルダダイアログを作ってそのフォルダを指定して フォルダ名をテキストボックスに表示、 その表示されてるフォルダの中身を 別のボタンを押せばインポートできるように、 テキストファイル A1 A2 A3 A4 インポート後のテーブル名 B1 B2 B3 B4 インポート時の定義は全て同一です。 わかりにくくてすみません、 知恵を貸してください

  • エクセルのグラフについての質問

    エクセルのグラフで質問です。 僕が現在使用しているグラフは「散布図」と言う種類のグラフです。 そしてセルP2には「900」P3には「1400」P4には「1900」P5には「2900」P6には「3400」の文字を書いています。 そしてP11には「220」P12には「200」P13には「250」P14には「220」P15には「260」P16には「260」の文字を書いています。 軸の書式設定のY軸は最小値が「200」最大値が「400」目盛間隔が「20」を記入してます。 軸の書式設定のX軸は最小値が「500」最大値が「4000」目盛間隔が「500」を記入しています。 元のデータのXの値はP2~P8を選択し、Yの値はP11~P16を選択しています。 グラフオプションのX/数値軸は目盛線と補助目盛線にチェックを入れ、Y/数値軸には目盛線のみチェックを入れています。 データラベルの所ではYの値にチェックを入れています。 現在のグラフは系列1しか入力されていませんが、後で系列2や3とデータも増やして一緒のグラフに表示させる予定です。 そこで質問なのですがX数値軸には「500」「1000」「1500」・・・「4000」と500感覚で均等に数値が表示されていますが、これをグラフの交わっている箇所の数値も表示する(添付図で言うと220と数値が書いている所に「900」、200の数値が書かれている所には「1200」・・・)を表示させる方法はありますか?

  • Excel パスワードを自動的に入力するマクロ

    エクセルの特定のシートにパスワードをかけています。 他の人に見られないように設定をしているのですが、自分のパソコンから開ける場合は毎回入力するのが面倒です。 たとえば、マクロの登録でパスワードが求められた場合に自動的に入力したり、パスワードの選択ができるプログラムを起動する、という設定は可能なのでしょうか?