2016-06-01 2 views
1

アクセスランタイムモードでレポートを適切にフィルタリングする方法を知っている人はいますか? DoCmdの通常のコードは機能しません。これは動作しませんでしたMsランタイムモードでフィルタレポートにアクセス

Private Sub Befehl217_Click() 
DoCmd.OpenReport "Tagesbericht", acViewPreview 
End Sub 

Private Sub Bezeichnungsfeld26_Click() 
DoCmd.GoToControl "DateFilter" 
DoCmd.RunCommand acCmdFilterMenu 
End Sub 

これは私がレポートにしようとしたものです。アクセスは"FilterMenuが利用できません"と不平を言いました。

私はコンテキストメニューを作成しようとしましたが、これは私だけカット、コピー、貼り付けを表示しました。日付をフィルタリングした場合、あなたが適切にフォーマットされた文字列表現を渡す必要があり

DoCmd.OpenReport "Tagesbericht", acViewPreview, , "[YourField] = " & somevalue & "" 

Me.Filter = "[YourField] = " & somevalue & "" 
Me.FilterOn = True 

や、あなたの現在の方法に拡大する:

+0

... GoToControlラインを無効にしますか特に、[最小限の、完全で実証可能な例(MCVE)](https://stackoverflow.com/help/mcve)を使用しない限り、私たちの誰もあなたを助けることはできません。これを説明するには、これまでに書いたコード、サンプル入力(もしあれば)、期待される出力、実際に得られる出力(コンソール出力、トレースバックなど)を含めることです。あなたが提供する詳細があれば、受け取る可能性のある回答が増えます。また、[FAQ](http://meta.stackexchange.com/q/7931)と[ask](https://stackoverflow.com/help/asking)もチェックしてください。 –

+0

それはFilterMenuが利用できないと言います – idunnowhatimdoin

+0

実際にレポート内のフィールドで、フィルタが表示されたかったのです。私は私のフォームで動作しているが、私はそれがレポートでは動作しません何かマザーは – idunnowhatimdoin

答えて

1

eportにはBezeichnungsfeld26という名前のコントロールがあり、ユーザーがそのコントロールをクリックすると、そのコントロールのフィルターメニューが表示されます。

ユーザーがそのコントロールをクリックすると、フォーカスがあるため、GoToControlの必要はありません。 Bezeichnungsfeld26でフィルタリングする場合は、別のコントロールに移動したくありません。

あなたは何を試してみました?

Private Sub Bezeichnungsfeld26_Click() 
'DoCmd.GoToControl "DateFilter" 
DoCmd.RunCommand acCmdFilterMenu 
End Sub 
0

あなたはフィルタープロパティを使用することができます日付の場合:

Dim FilterDate As Date 

FilterDate = Date 

DoCmd.OpenReport "Tagesbericht", acViewPreview, , "[DateFilter] = #" & Format(FilterDate, "yyyy\/mm\/dd") & "#" 
+0

フィールドのonclickなどのコードでこれを記述しますか? これはフィールドのプロパティにありますか? – idunnowhatimdoin

+0

okこれはうまくいきませんでした...あなたはショートカットメニューの使い方を知っていますか?おそらく私はこれを試すことができます私はすでに何かを試みたがまだ問題があるので新しい質問を作成するだろう – idunnowhatimdoin

+0

コードが動作するので、あなたの実装はおそらく曖昧です。ショートカットメニューは、正しく呼び出すと、実行時環境では機能しません。 – Gustav