wildcard の回答履歴

全124件中1~20件表示
  • フォルダ内の複数ブック・シートを一括保護/解除する

    フォルダの中に複数のExcelファイル(ブック)が入っており、 それら全てのブック・シートの保護/解除を一括して行うマクロを現在使用しています。(後述) <現在の利用状況> ◆フォルダの中に複数のExcelファイル(ブック)が入っている(雛形、シート構成は全て同じ) ◆全てのブックにパスワード付きでブック保護・シート保護をかけている→パスワードは共通(1111) ◆マクロ用ブックは上記の処理対象ブックとは別フォルダに入れている (現在のVBAでは同一フォルダ内に入れた状態では作動しない) ◆マクロを実行する都度、任意のフォルダを選択する <改善希望> ◆マクロ用ブックと処理対象のブックを同一フォルダに入れた状態で作動するようにしたい (同一フォルダ内の自ブック以外のブックに対してブック・シートの保護/解除を一括処理したい) VBA初心者なので構文をどう書き換えるかで行き詰っています。 ThisWorkbook.Path を使うというのはなんとなく分かりますが、 何パターンか試してエラーの繰り返しです…。 ご教示頂けます様お願いいたします。 ------------------------------------------------------------------------- Sub 選択フォルダ内全て保護() Dim myFol As Object, myFile As Object, sh As Worksheet Dim openFilePath As String Const myPass As String = "1111" Set myFol = CreateObject("Shell.Application").BrowseForFolder(0, "フォルダを選択してください", 0) If myFol Is Nothing Then Exit Sub Application.ScreenUpdating = False openFilePath = myFol.self.Path & "\" With CreateObject("Scripting.FileSystemObject") For Each myFile In .GetFolder(openFilePath).Files If .GetExtensionName(myFile.Path) = "xls" Then With Application.Workbooks.Open(myFile.Path) For Each sh In .Worksheets sh.Protect Password:=myPass, DrawingObjects:=False, Contents:=True, Scenarios:=True, _ AllowFormattingCells:=True, AllowFormattingColumns:=True, AllowFormattingRows:=True, _ AllowInsertingRows:=True, AllowSorting:=True, AllowFiltering:=True, AllowUsingPivotTables:=True Next sh .Protect Password:=myPass, Structure:=True, Windows:=False .Save .Close False End With End If Next myFile End With MsgBox "終了しました" End Sub ------------------------------------------------------------------------- Sub 選択フォルダ内保護全て解除() Dim myFol As Object, myFile As Object, sh As Worksheet Dim openFilePath As String Const myPass As String = "1111" Set myFol = CreateObject("Shell.Application").BrowseForFolder(0, "フォルダを選択してください", 0) If myFol Is Nothing Then Exit Sub Application.ScreenUpdating = False openFilePath = myFol.self.Path & "\" With CreateObject("Scripting.FileSystemObject") For Each myFile In .GetFolder(openFilePath).Files If .GetExtensionName(myFile.Path) = "xls" Then With Application.Workbooks.Open(myFile.Path) For Each sh In .Worksheets sh.Unprotect Password:=myPass Next sh .Unprotect Password:=myPass .Save .Close False End With End If Next myFile End With MsgBox "終了しました" End Sub -------------------------------------------------------------------------

  • excel マクロでの特殊文字入力方法

    マクロで特殊文字入力は出来ないのでしょうか? やりたい内容は、セルをダブルクリックした時に✓を表示させたいのです。 セルをダブルクリックした時に○を表示するマクロが、下記の通りである時、 ○の代わりに✓を表示させたいのですが、VBAで○の所に✓で書き換えると ?と表示されてしまいます。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) With Target If .Value = "○" Then .Value = "" Else .Value = "○" End If End With End Sub

    • 3620313
    • 回答数2
  • Accessのリンクテーブルについて質問です。

    Accessのリンクテーブルについて質問です。 この度、バックエンドとフロントエンドでのデータベースを作っています。 フロントエンドを会社のPC10台程度で利用しようと考えています。 ただ、作成するのが、自宅のPCと会社のPCで作っているのですが、 リンクテーブルのパスが変わってしまい、非常に困っています。 現在は自宅でデータ系を作成し、会社でフォーム等見た目に関するものを作っている次第です。 リンクテーブルを自動更新させる方法、または、ボタンで全てのリンクテーブルを更新させる方法はないでしょうか? 一つのテーブルをボタンで更新させる方法は、他サイトで見つけたのですが、複数テーブルを一挙に更新させる方法が見当たりません。 また、面倒な話なのですが、テーブル数は現在決まっておらず、今後増える予定です。(現在は7つ。) 出来れば参考サイトやソースコードを教えていただけると、非常に助かります。 何卒よろしくお願いいたします。m(_ _)m

    • abuhiro
    • 回答数2
  • 【Access97】txtファイルの一括インポート

    txtファイルをAccessへ自動でインポートする方法としてはマクロの”テキスト変換”しか知識がありません。 今回そのtxtファイルが1000個以上あり、一回一回txtファイル名を変えての”テキスト変換”では膨大な時間がかかってしまいます。 ファイル名はすべて「数字4桁.txt」で統一、1つのフォルダ内に保存してありますので、この条件でAccessへ一度に取り込む方法があればご教授ください。 <txtファイル:ヘッダーなし、1ファイルにつき1~100行程度のデータ> 001,"トウキヨウ","東京" 002,"オオサカ","大阪" 003,"ナゴヤ","名古屋" 004,"フクオカ","福岡"   ・   ・   ・ <Accessテーブル:フィールド名はtxtデータの並び順に合わせて作成> ─── ──── ─── 番号   支店カナ 支店名 ─── ──── ───

    • KO1014
    • 回答数3
  • Outlook Expressが立ち上がらなくなってしまいました

    今朝からOutlook Expressが立ち上がらなくなってしまいました。 今まで通り、デスクトップのショートカットから立ち上げようとしましたが、反応がありません。 プログラムメニューから立ち上げようとしても同じ状況で、とても困っています。 昨夜ウイルスバスターを2008から2010にバージョンアップしましたが、そのことと何か関係があるのでしょうか? 是非、対処策を教えていただきたいです。 よろしくお願いいたします。

  • VBAの条件の異なるデータの取り出し

    参照元のシートの項目がリンゴ・ミカン・バナナ・スイカで一行づつ、それぞれの価格が記載されているとします。 <参照元シート>  名前 価格 リンゴ 100 ミカン 150 バナナ 200 スイカ 250 参照先のシートにはリンゴ・ミカン・バナナ・スイカの重さや大きさが複数行で記載されています。 <参照先シート> 名前  重さ 大きさ 糖度 リンゴ 50        ミカン 40 ミカン     50    バナナ     30 スイカ 200 スイカ     100 スイカ         50 別シートに下記のようにデータを取り出し、印刷後次の果実に切り替えて印刷したいのですがマクロはどのようになるのでしょうか。。 <別シート> ・名前 ・価格 ・重さ(記載の無い場合は無し) ・大きさ(記載の無い場合は無し) ・糖度(記載の無い場合は無し) ForとIFを使用して作成してみたのですが、参照先シートで複数項目がある場合に転記するマクロがわからず頓挫しております。。 (名前に対して重さや大きさが複数ある場合にデータを取り出し、次の名前を読みにいく部分がわかりません) マクロに明るい方いらっしゃればご回答いただけますでしょうか。

  • Access2000と2003で一つのファイルを操作しています。

    パソコン1にAccess2000があり、パソコン2にAccess2003があります。 一つのAccessファイルUSBメモリで持ち歩き、を2台のパソコンで操作しています。(同時に作業することはありません) ファイル形式はAccess2000形式です。 今まではどちらで操作しても、ちゃんとデータ入力、表示が出来ていたのですが、パソコン1のOS再インストールをし、Access2000を入れ直したときから、パソコン1で入力したデータがパソコン2で表示されなくなりました。 なにか設定が変わってしまったのでしょうか? どうか解決法を教えてください。 よろしくお願いします。

  • AccessVBAで質問があります。

    AccessVBAで質問があります。 卒業研究で作っている途中の物なのですが、質問をさせてください。 書籍名、著者名、出版社のテキストBOXが3つあります、それら全部未入力の時。 MsgBox "何も入力されていません"と出ます。この部分は、始めの時にちゃんと起動してくれるのですが。 クリアボタンを押した後、全く反応してくれません。 押したときのPGは、Me.書籍名 = ""達の用に入力しています。問題はこの部分のせいだと思うのですが、今の自分では打開策が見つかりません。 皆様、よろしくお願いします。 ※PGを書きたかったのですが、NGになるみたいなので、ものすごく簡単に書いています。

  • リンクテーブル(複数)のパス変更について<ACC2003>

    現在ACCESS2003で出荷データから売上の集計が可能となるように 試みているのですが、都合上プログラムとデータを分けて処理 したいと考えております。 そこで、リンクテーブルを活用したいと思うのですが、環境に よってパスが変更となったり、データソースを切り替えたい時 などリンクテーブルのパスが変更できると非常に有難い状況です。 多少ネットで調べVBAで変更させる方法は見つかったのですが、 基本的に1つのリンク先を想定しているとの事で、複数は対応 していないようです。 例えば、リンクテーブルをそれぞれ TBL伝票データ   → C:\DB1\A.mdb TBL得意先マスター → C:\DB2\B.mdb TBL商品マスター  → C:\DB2\C.mdb と言ったように複数リンク先がある場合でそれぞれ パス変更が生じた場合に簡単に変更ができる方法は無いでしょうか。 (リンクファイルが1つの場合) Dim db As Database Dim a As TableDef Set db = CurrentDb() For Each a In db.TableDefs If Len(a.Connect) <> 0 Then a.Connect = ";database=" & NEWPATH '→新しいパス名 a.RefreshLink End If Next db.TableDefs.Refresh

  • エクセルで質問です!

    エクセルで質問です! A   B 1 出荷日 出荷品 2 1月2日 りんご 3 1月3日 みかん 4 1月4日 なし 5 1月5日 りんご 6 1月6日 なし 7 1月7日 りんご 8 1月8日 みかん 9 1月9日 りんご 10 1月10日 りんご 11 1月11日 なし 上記の様な表があって、このりんごの出荷の最終日を C1のセルに みかんの最終出荷日をC2のセルに返すにはどういった関数を使えば良いでしょうか? 単一ならできるのですが…同一の検索ワードがあるとうまく出来ません… 関数のみでこれって出来るでしょうか?

  • Windows 2000 Server

    Windows 2000 Serverでクライアントから 起動時にあるドライブにマッピングしたいのですが ログオンスクリプトの記述例がわかりません 何方か教えていただけますでしょうか? 出来ればサンプル記述お願い致します。

  • EXCEL2000においての自動保存について

    「ツール」→「アドイン」→「自動保存」にチェックされていないのに、保存しているファイルを開くとなぜか「○○のバックアップ」という名の同じワークシートが保存されています。 これは何が原因なのでしょうか? またこのバックアップ文章を保存させない方法はどうしたら宜しいのでしょうか? ちなみに使用しているワークシートは、ネットワークでつながっている他の方のハードから当方のハードにそのまま保存したワークシートを使用しています。 宜しくお願いします。

    • shu666
    • 回答数2
  • Excelで変数名に変数を使用(前はできたのに…)

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=614375 で以前も教えていただいたんですが、なぜかできなくて…。 Sub Hensuu() For i = 1 To 5 Gyou(i) = i * i MsgBox Gyou(i) Next i End Sub と試しにしてみたんですが、 「コンパイルエラー:  Sub または Function が定義されていません。」 と出てしまいました。 どこがいけないのでしょうか?

    • w-inty
    • 回答数2
  • エクセルVBAで日付の形式表示が出来ません

    エクセル2000です。 sheet(1)のセルに日付データが代入されています。 そのデータををsheet(2)のセルに代入し、"NumberFormat"を使い表示形式を「**年**月**日」と設定しましたが実際のセルには左詰めで「**/**/**」と表示されてしまいます。 「**年**月**日」と表示させるにはどうしたらいいでしょうか?

    • yaba77
    • 回答数3
  • エクセルVBAで日付の形式表示が出来ません

    エクセル2000です。 sheet(1)のセルに日付データが代入されています。 そのデータををsheet(2)のセルに代入し、"NumberFormat"を使い表示形式を「**年**月**日」と設定しましたが実際のセルには左詰めで「**/**/**」と表示されてしまいます。 「**年**月**日」と表示させるにはどうしたらいいでしょうか?

    • yaba77
    • 回答数3
  • エクセルのマクロ

    勉強を始めたばかりで処理を繰り返す項目をいろいろ調べたのですがうまくいきません。教えてください。 オートフィルタで3列目を”東京 ”という文字でを抽出したあとである処理をし、その後同じ列で今度は”神奈川 ”を選び同様の処理をする。また今度は 次は"千葉”と繰り返したいのです。 マクロを見てみると Selection.AutoFilter Field:=3, Criteria1:="1"    何らかの処理 Selection.AutoFilter Field:=3, Criteria1:="2"    何らかの処理 Selection.AutoFilter Field:=3, Criteria1:="3"    何らかの処理 となっています。こうなると必要な数だけ これをコピーしないといけないので ループのようなもので下記の■の部分の 数字を1.2.3.~と処理を繰り返す毎に 増やして生きたいのです。 そしてリストの最後にきたらおしまいにしたいのですが・・・・。FOR NEXT とか DO LOOP とか 試しましたが、私の幼稚な知識ではうまく動いてくれませんでした。すみませんがよろしくお願いします。 Selection.AutoFilter Field:=3, Criteria1:="■" 処理

    • cyama9
    • 回答数2
  • excelでセル結合したセルにリンクを張りたい

    タイトルの通りですが book1に商品名だけのデータが入力されています book2の表で 2つのセル結合したセルが 連続で40件あり その1つのセルに book1の商品名をリンク張り付けし オートフィルでコピーしたいのですが うまくいきません (1つ目のをコピーしてしまい 同じデータが入ってしまいます なにかよい方法はありますか??? 関数を使用したほうが よいでしょうか

  • エクセルで、↓キイで1行下がり、↑キイで2行上がります?

    人からもらったエクセルの表で、↓キイを押すとセル位置が1行下がります。これは当たり前です。しかし、↑キイを押すと2行分一度に上がります。これをやめさせて1行分づつ上がるようにしたいのですが、どこに設定があるのでしょうか?よろしくお願いします。

    • zuntac
    • 回答数1
  • マクロで選択した図形の選択状態を解除するには

    Excel97,Windows98SEを使用しています。 シート上に作成したコントロールツールのコマンドボタンをクリックすると、 シート上の全ての図形を選択して、順序を最背面にするというマクロを作成したのですが、 選択した図形のハンドルが消えません。 図形選択を解除して、B26セルを選択したいのですが、どうしたらよいでしょうか? Private Sub CButton_gyou_Click() ActiveSheet.DrawingObjects.Select Selection.ShapeRange.ZOrder msoSendToBack Range("B26").Select End Sub ご存知の方、どうぞよろしくお願いいたします。

  • エクセルで助けてください・・・・

    突然エクセルが使えなくなりました・・・・ ファイルを開こうとすると、強制終了の後、 エラーメッセージが出ます。 内容は『ファイル‘○○.xls’(またはその構成ファイル)がみつかりません。パスおよびファイル名が正しいか、必要なライブラリがすべて利用可能かどうか、確認してください。』以上です。 一度、アンインストールをして見ましたがだめでした。 ちなみにファイルは色々ありますが全部使えません・・・ Windows98、Excel2000です。

    • saisan
    • 回答数9