NotFound404 の回答履歴

全675件中41~60件表示
  • Access2003 Where条件について

    フォームから抽出区分を指定してデータを抽出したいと思っています。 抽出区分=0 DESALETYPEは0のデータを抽出 抽出区分=1 DESALETYPEは1~7のデータを抽出 下記のように条件を入力しましたが、 条件に直接0とか1or 2 or 3 ・・・・を入力したほうが レスポンスが速く、下記のようにIIf関数を指定すると、 抽出はできますがレスポンスが遅くなります。 レスポンスが速くなるよう変更したいのですが、 思うようにいきません。 どこか変更する箇所があるのでしょうか。 宜しくお願い致します。 IIf([Forms]![ブランド別出荷数]![テキスト28]=0,0,IIf([dbo_SALE].[DESALETYPE]=1,([dbo_SALE].[DESALETYPE])=1   Or ([dbo_SALE].[DESALETYPE])=2 Or ([dbo_SALE].[DESALETYPE])=3 Or ([dbo_SALE].[DESALETYPE])=4 Or ([dbo_SALE].[DESALETYPE])=5 Or ([dbo_SALE].[DESALETYPE])=6 Or ([dbo_SALE].[DESALETYPE])=7))

  • VBEが閉じてしまいます。

    Sub Sample() Dim mdlName As String mdlName = "test" Debug.Print AllProcName(mdlName) End Sub Function AllProcName(ByVal strModuleName As String) As String Dim mdl As Module Dim lngDecCnt As Long '宣言セクションの行数 Dim strName As String 'プロシージャ名比較用 Dim strProcName As String '全プロシージャ名 Dim lngR As Long 'プロシージャの種類 Dim i As Long DoCmd.OpenModule strModuleName Application.VBE.MainWindow.Visible = False Set mdl = Modules(strModuleName) '宣言セクションの行数格納 lngDecCnt = mdl.CountOfDeclarationLines '最初のプロシージャ名格納 strName = mdl.ProcOfLine(lngDecCnt + 1, lngR) strProcName = strName & vbNewLine '宣言セクションの次行から最終行までループ For i = lngDecCnt + 1 To mdl.CountOfLines '新規プロシージャ名取得 If strName <> mdl.ProcOfLine(i, lngR) Then strName = mdl.ProcOfLine(i, lngR) 'プロシージャ名追加 strProcName = strProcName & strName & vbCrLf End If Next i Set mdl = Nothing AllProcName = strProcName End Function と言うコードをVBE画面でF5で実行すると、VBEが閉じてしまいます。 しかしF8でゆっくりやっていくとVBE画面は閉じません。 なぜ一気にやると閉じてしまうのでしょうか? Application.VBE.MainWindow.Visible = False をコメントアウトすると VBE画面は閉じませんが該当のモジュールが実行後にアクティブになります。 環境はwin8.1、アクセス2010です。

  • WHERE と Filter

    アクセスのADOで rs.Open "SELECT * FROM テーブル1 WHERE フィールド1=あ", cn, adOpenStatic, adLockOptimistic とするのと、 rs.Open "テーブル1", cn, adOpenStatic, adLockPessimistic rs.Filter = "フィールド1゛ = 'あ'" とするのでは、 どちらの方が処理速度が速いですか?

  • フォームの従業員番号と日付から該当レコードを

    フォームの従業員番号と日付から該当レコードを検索したいのですができません。 おそらくFilterの文法が間違えているのではと思いましたが、色々試した結果 自力ではダメでした。何卒よろしくお願いします Private Sub テスト() Dim CN As ADODB.Connection: Set CN = CurrentProject.Connection Dim RS As ADODB.Recordset: Set RS = New ADODB.Recordset RS.Open "勤怠表", CN, adOpenKeyset, adLockOptimistic RS.Filter = "従業員番号 = " & Me.TB_StaffID & " and 日付 = #" & Format(Me.TB_Date, "yyyy/mm/dd") & "#" If RS.RecordCount = 0 Then Debug.Print "ありません" Else Do Until RS.EOF Debug.Print RS!勤怠番号 RS.MoveNext Loop End If RS.Close: Set RS = Nothing CN.Close: Set CN = Nothing End Sub

  • アクセスファイルが開けなくなる時がある

    アクセス2010です。 test1.accdbを開きたいのですが、 フォルダ上でダブルクリックしても開けず 他のアクセスファイルはすべて閉じて test1.accdbを再度フォルダ上でダブルクリックしても開けません。 タスクマネージャーで見たら Microsoft Access(32ビット) と表示はされるのですが、ファイル名の表示はないです。 test1.laccdbは削除することもできないのですが これは何が起きてるのでしょうか? test1.accdbが開かれているからtest1.laccdbが出来上がっていると思うのですが なぜタスクマネージャーにはファイル名が表示されないのでしょうか? 更になぜフォルダ上でダブルクリックしても開けないのでしょうか? 結局開くには、 タスクマネージャーのMicrosoft Access(32ビット)を削除し、 test1.accdbをダブルクリックすると開けます。 その場合は、タスクマネージャーには、ちゃんとファイル名が表示されます。

  • accessのサブフォーム毎に連番をふり直す

    accessのフォーム入力において、メインのフォームにサブフォームが一つ配置されています。 単票形式のメインフォームには、フィールド「ID」(主キー)と「社員名」と「日付」、「評価」が格納されておさり、「ID」で紐付けされたサブフォーム(帳票またはデータシート形式)に、社員の行動記録が入力されます。 ※行動記録:08:30~10:00 A社訪問 …など。 サブフォームにデータが入力される際、行動した時系列順に項番を振って管理したいと考えています。 データ例 メイン ID  日付   社員名   評価 1 2016/03/16 田中一郎  C 2 2016/03/16 鈴木政夫  D 3 2016/03/17 田中一郎  B サブ ID 項番 開始時間 終了時間 業務内容 1 1  08:30   10:00  A社訪問 1 2  10:25   11:40  見積書作成 2 1  08:30   12:00  会議 3 1  12:50   16:30  現場監督 3 2  17:00   21:50  報告書作成 クエリやイベントプロシージャにDcountやDMax関数、carrentrecordなどを使ったアドバイスのある回答やブログを見付けて、色々と試してみたのですが、どれも上手く行きません。 一番簡単そうなDMaxをサブフォームの項番の既定値に =NZ(DMax("項番", "サブフォームのテーブル名")+1,1) とするも、「項番」の最大値+1の「3」が表示されます。 データの入力は、日付当日とは限らず、また、入力順序も、(新規にレコードを追加する場合を除き)ID順だとは限りません(後日修正を行う場合も有ります) こういった場合の対処方法について、ご教示をお願いします。 なお、当方の技能レベルは、VBAのコードの意味を理解しないまま、他人の作ったコードをコピーして、何となく修正して使用できている、と言った程度です。 よろしくお願いします。

  • 動画再生ソフト:GOMに代わるものは

    長年動画再生にGOM playerを使てきたのですが、最近、月一ぐらいで「更新」を強制し、しかも注意深くやっても必ずなんかいらん訳のわからんソフトを侵入させたり、ブラウザをYAHOOに誘導したりで、もうウンザリするようになりました。 動画再生で他にお勧めのソフトがありましたら、御推薦いただければ嬉しいです。 (ちなみに、WINDOWS MDEDIA PLAYER及びVLCは、私のPCでは不具合が起こるのでこれ以外をを探しております) 宜しくお願い致します。

  • objAcc.Visible = False 可視

    アクセスからアクセスファイルを開いています。 Set objAcc = CreateObject("Access.Application") objAcc.OpenCurrentDatabase "C:\あああ.accdb", False objAcc.Run "test1" objAcc.Quit Set objAcc = Nothing の様にして、VBAでアクセスファイルを開いてるのですが この時、起動するファイルの可視をFalseにすることは可能でしょうか? Set objAcc = CreateObject("Access.Application") objAcc.Visible = False objAcc.OpenCurrentDatabase "C:\あああ.accdb", False としても、ファイルが開いてるのが見えてしまいます。

  • マクロでメール内容を特定し、摘出する方法は?

    仕事で、部下の営業マンたちに、 下記のメールを自動で送っています。 ******************************************** 【件名】  ○○君 今週の成績 【内容】 ○○君へ、 調子はどうだ。 前の年、君はがんばったね。 ○○件、成約した。 今週は、何件、 成約したのかね? ○○より ******************************************** そうしたら、 受信者から、 数字だけが、返信されてきます。 500 というふうに。 そして、LEFT関数で、その数字を取り組んでいます。 ’件名に○○君があったら、 If InStr(Mailitem.Subject, "○○君") > 0 Then ’4つめの文字を摘出 Range("A1") = Left(MailItem.Body, 4) エキスパートの皆さんはこのようにアプローチしますか? どのような他のアプローチがあるでしょうか? このコードの問題は、 返信は数字だけ送らなければいけない、ということです。 数字だけじゃなくて、 普通にメールに返信してもらって、(お疲れさまです。元気ですなど) 私が知りたい数字だけ(今週の成約数)、摘出したいのです。 例えばアウトルックのメールの中で行に番号がつけれれば、 この行の文字を摘出する・・・とか? よいアイデアがあれば、教えて頂ければ幸いです・・・

    • ベストアンサー
    • noname#221405
    • Visual Basic
    • 回答数1
  • クエリデータの並び替え

    Accessバージョン2002 クエリで、カッコ含むデータから、カッコ内のデータを下記の式で表示は出来たのですが、この表示したデータを昇順降順で、並び替えると下記の様に符号に関係なく並びがバラバラとなってしまいます。 前日比%: Left(Mid([前日比],InStr([前日比],"(")+1),InStr(Mid([前日比],InStr([前日比],"(")+1),")")-1) 抜き出しもとのフィールドデータ 0.04 (9.52%) → 抜き出しフィールドで、上記の式を組んで抜き出したデータ 9.52% 前日比%フィールド 9.52% -8.16% 7.14% 6.67% 58.33% -5.56% 4.76% -4.17% -3.33% 26.67% -22.22% -20.00% 2.94% -2.78% 19.44% 18.18% -14.29% -13.64% -12.50% 12.50% 12.12% 11.11% 0.00% 0.00% 0.00% 0.00% この昇順降順の並びを正確に並び替える方法をご教授頂けると幸いです。 宜しくお願い致します。

  • 条件付き書式をレコード 3つ以上は無理でしょうか?

    アクセス2010で条件付き書式をレコードにつけたいのですが 3つ以上は無理でしょうか? エクセルでは3つ以上はできますが アクセスでは不可能ですか?

  • objAcc.Visible = False 可視

    アクセスからアクセスファイルを開いています。 Set objAcc = CreateObject("Access.Application") objAcc.OpenCurrentDatabase "C:\あああ.accdb", False objAcc.Run "test1" objAcc.Quit Set objAcc = Nothing の様にして、VBAでアクセスファイルを開いてるのですが この時、起動するファイルの可視をFalseにすることは可能でしょうか? Set objAcc = CreateObject("Access.Application") objAcc.Visible = False objAcc.OpenCurrentDatabase "C:\あああ.accdb", False としても、ファイルが開いてるのが見えてしまいます。

  • スリープからの復帰

    パソコンをスリープ状態にすると、二分程で復帰します。また直ぐにスリープ状態に戻すのですが、また2・3分で復帰してしまいます。どうしたら良いのでしょうか。どなたか解る人いませんか。 宜しくお願いいたします。 機種は VALUESTAR W OSはWindows7 HomePremiumです。 ※OKWaveより補足:「NEC 121ware :ソフトウェア」についての質問です

  • test1からの実行かどうかを取得する方法は

    test1のモジュールには、 ------------------------- Set acApp = New Access.Application With acApp .OpenCurrentDatabase "C:\test2.accdb" .Visible = True .Application.Run "プロシージャ名" ------------------------- のような感じで test1からtest2の"プロシージャ名"を実行するVBAコードを書いたのですが この時に、 test2のファイルからは、test1からの実行かどうかを取得する方法はありますか? Debug.Print Application.UserControl で自分で起動したか、 オートメーションを使って他のアプリケーションによって起動されたかを取得できるとの事ですが 「オートメーションを使って他のアプリケーションによって起動された」時に どのファイルから起動されたかを取得したいです。

  • The CARDソフトについて

    The CARD(Ver8)をWindows7で使用していますがWindows10のハードに移行する方法を教えてください。The CARDは顧客管理に20数年使用していますので このデータを使いたいのですが! 使用ができない場合このソフトに代わるソフトが有れば紹介してください。The CARDデータはテキスト出力ができますので取り込み可能だと思います。宜しくお願い致します。

  • 全ファイル名をセルに出力するVBAプログラム

    VBA初心者です。 Aというディレクトリがあり、その中に1,2,3,4というフォルダがあります。 1には「apple1.csv」、「orange1.csv」、「banana1.csv」 2には「apple2.csv」、「orange2.csv」、「banana1.csv」 ・・・ 4には「apple4.csv」、「orange4.csv」、「banana4.csv」 が入っています。 この1から4のフォルダのapple1,apple2,apple3,apple4のファイルをとりだし、それぞれのA1~A10セルを新たなファイルに自動転記する(apple1はA1~A10,apple2はB10~B10・・・)といった具合のマクロを組みたいと思っています。 そこで以下のHPを参考にし、まずはトップディレクトリである「C:\Sample」の中のすべてのフォルダを表示するプログラムをつくってみようと試みました。 ホームページでは以下のソース Sub Sample() Call FileSearch("C:\Sample") End Sub Sub FileSearch(Path As String) Dim FSO As Object, Folder As Variant Set FSO = CreateObject("Scripting.FileSystemObject") For Each Folder In FSO.GetFolder(Path).SubFolders Debug.Print Folder.Path Call FileSearch(Folder.Path) ''見つかったフォルダを引数に指定して、自分自身を呼び出す Next Folder End Sub によってイミディエイトにフォルダを表示する仕様になっています。 実際、私もこのソースで実行したところ、イミディエイトにはトップディレクトリ以下の全ディレクトリ名が表示されました。 これを改良し、2列目に全ディレクトリ名が表示されるプログラムを組みました。ソースは以下です。 Sub Sample() Call FileSearch("C:\Sample") End Sub Sub FileSearch(Path As String) Dim FSO As Object, Folder As Variant ' Dim i As Integer ' i = 1 Set FSO = CreateObject("Scripting.FileSystemObject") For i = 1 To FSO.GetFolder(Path).SubFolders Debug.Print Folder.Path Call FileSearch(Folder.Path) ''見つかったフォルダを引数に指定して、自分自身を呼び出す i = i + 1 Cells(i, 2) = Folder Next i End Sub これを実行したところ、2列目にはすべてのディレクトリは表示されず、一部のディレクトリしか表示されません。 改良の仕方がおそらくまずいと思うのですが、何か私が根本的に間違えている気がするので、ご指摘いただけたら幸いです。

  • パスワードが正しくありません。

    エクセルからPW付のアクセスファイルへADOで 接続したいのですが cn.Open "Provider = Microsoft.ACE.OLEDB.12.0;Data Source= D:PW.accdb;Jet OLEDB:Database Password=0000;" とすると 実行時エラー2147217843 パスワードが正しくありません。 と言うエラーになります。 でもパスワードはあってます。 手入力なら開けます。 コードが間違ってるのでしょうか?

  • ACCESS2010のソフトが起動できなくなった

    windows7 sp1 32bit offece2010 を使用しています。2016年3月10日のwindows update 後にACCESS2010を使用したソフトが起動できなくなりました。「イベントプロパティに指定した式 読み込み時 エラーが発生しました~以下略」 前日は問題なく起動できていました。 windows update の KB2956063 か KB3085515 が影響しているのではないかと推測していますが、何か情報や解決策があれば教えてください。 宜しくお願いします。

    • ベストアンサー
    • noname#231120
    • Windows 7
    • 回答数2
  • ナビゲーションウインドウにあるすべてのオブジェク

    アクセスのVBAで ナビゲーションウインドウにあるすべてのオブジェクトを取得したいのですが Sub Sample() Dim cn As New ADODB.Connection Dim catx As New ADOX.Catalog Dim v As Variant Dim sPath As String sPath = CurrentProject.FullName cn.Open "Provider = Microsoft.ACE.OLEDB.12.0;Data Source=" & sPath & ";" Set catx.ActiveConnection = cn For Each v In catx.Tables Debug.Print v.Name Next For Each v In catx.Forms Debug.Print v.Name Next For Each v In catx.Procedures Debug.Print v.Name Next cn.Close Set cn = Nothing End Sub だと、.Formsがコンパイルエラーになります。 なので、 For Each v In catx.Forms Debug.Print v.Name Next を抜かして実行すると ********************* ~TMPCLP425901 MSysAccessStorage MSysAccessXML MSysACEs MSysComplexColumns MSysNameMap MSysNavPaneGroupCategories MSysNavPaneGroups MSysNavPaneGroupToObjects MSysNavPaneObjectIDs MSysObjects MSysQueries MSysRelationships MSysResources ********************* と、 テーブルとクエリの一覧は取得されますが、 Proceduresは取得されません。 私の予想としては Proceduresはモジュールの一覧だと思ってました。 とりあえずテーブルとクエリは取得できたので 残りのフォーム、レポート、モジュールを取得するにはどうすればいいでしょうか? オブジェクトブラウザーでCatalogのクラスを見るとフォーム等がありません。

  • pdf印刷時に登録ファイル名の確認を無効化したい

    excel2010 TESTフォルダ内にある。全てのexcelフィルをcutepdfwriterでpdfファイル化しようとしています。 マクロ Sub test() Application.DisplayAlerts = False Dim Fol As String Dim Fname As String Dim Ws As Worksheet Fol = "C:\test" Fname = Dir(Fol & "\*.xlsm") Do While Fname <> "" If Fname <> ThisWorkbook.Name Then Workbooks.Open Fol & "\" & Fname For Each Ws In Worksheets Ws.PrintOut Next Workbooks(Fname).Close SaveChanges:=False End If Fname = Dir() Loop End Sub で実施するとファイルを開いてpdfファイルを作成可能なのですが、 各々のファイルに対して、名前をつけて保存 ファイル名.pdf と聞いてきます。 その都度、保存というボタンをクリックする必要があり、 大量のファイル実施時、手間です。 なお、cutepdfwriterを通常使うプリンタに設定しています。 この保存というボタンをクリックしないで、ファイル名をそのままでpdfファイル化する方法は、 ありますでしょうか?