φ(..) ビボ~6 φ(..)

主にAccess、VBAに関する備忘録

オブジェクトまたはクラスがこのイベントセットをサポートしていません。

「イベントプロパティに指定した式 開く時 でエラーが発生しました:
オブジェクトまたはクラスがこのイベント セットをサポートしていません。」

*マクロ名、ユーザー定義関数名、[イベント プロシージャ]以外の式が指定されています。
*関数、イベント、マクロの評価でエラーが発生しました。

ファイルを開こうとするとエラーが表示されて開けない --Access Club 初級者 Forum--

この問題を回避するには、次の方法のいずれかを使用します。
方法 1

1 つだけのバージョンの Access コンピューターにしてください。これを行うには、Access 2007 または Access 2003 をアンインストールする必要があります。この方法の詳細については、「関連情報」を参照してください。
方法 2

Msaccess.exe ファイルを実行するには、[管理者として実行] オプションを使用しています。このオプションを使用して、ファイルを実行する方法の詳細については、マイクロソフト サポート技術情報の資料を参照する次の資料番号をクリックします。
922708Windows Vista でユーザー アカウント制御 (UAC) を使用する方法
方法 3

Access 2003 用 Msacc.olb ファイルを削除します。次に、Access 2003 インストールを修復します。

メモ アクセス 2007年を再起動すると再びこの問題が発生します。この問題を回避するには、このメソッドを再度使用する必要があります。

Access 2007 が Windows Vista ベースのコンピューターに Access 2003 でウィザードとコマンドの VBA を使用して Access 2003 をインストールするときにエラー メッセージが表示ことがあります。

[ 環境と現象 ]

  • OS:Windows7
  • Access2000 と、Access 2010 Runtime が共存する環境
  • インストール順は2000→2010Runtimeで、正常に動作していた。

  • 環境はそのまま、ユーザーを追加した。
  • 追加したユーザーでログインし、Access2000のadpを実行すると、タイトルにあるエラーがでるようになった。
  • フォーム、モジュール、参照設定を確認したが特に異常はなく、コンパイルも通る

[ 対応 ]

  • 引数 /decompile を付けて起動し、修復を試みてみたが、状況に変化なし

  • 現状、バージョンを統一することはできないので、方法1は却下。方法2を試す。

  • デスクトップにあるアプリのショートカットのプロパティ→「互換性」→「管理者として実行」にチェック
    • ショートカット:
      "C:\Program Files\{Office2000用フォルダ}\Office\MSACCESS.EXE" {アプリ名}.adp
    • 現象は変わらず.....。

  • C:\Program Files\{Office2000用フォルダ}\Office\MSACCESS.EXE 自身のプロパティ
    →「互換性」→「管理者として実行」をチェック
    • 成功!!

  • 方法3は試していない。

MySQL 覚書

A 「bad interpreter: そのようなファイルやディレクトリはありません」が表示される場合、以下のどちらかの理由が考えられます。

(1)シェル内で指定したシェルが見つかりません。

whish sh コマンドで指定されたシェルを確認してください。

[root@localhost test1]# which sh
/bin/sh

(2)
Windows で作成したファイルを linuxで実行しようとした場合。
Windows と linuxでは改行コードが異なります。

WindowsはCR+LF でLinuxでは LF です。
改行コードを修正して実行してください。

【Redhat Enterprise Linux 4】 | 「bad interpreter: そのようなファイルやディレクトリはありません」のエラーがシェル実行時に表示される。

b:id:ha2:t:cron

制約付きカラムを削除する

SQL Serverで自動生成される制約名は、
DF__{テーブル名}__{カラム名}__{自動生成文字列}
のようになっていて、DROP/CREATEのたびに変わってしまう。

DECLARE @TABLE_NAME NVARCHAR(256)
DECLARE @COLUMN_NAME NVARCHAR(256)
DECLARE @TABLE_ID INTEGER 
DECLARE @COLUMN_ID INTEGER 
DECLARE @CONSTRAINT_NAME NVARCHAR(256)
SET @TABLE_NAME = '削除したいテーブル'
SET @COLUMN_NAME = '削除したいカラム'

/* 削除したいテーブルのシステムidを取得する */
SELECT @TABLE_ID = id FROM sys.sysobjects 
WHERE xtype = 'U' AND name = @TABLE_NAME

/* 削除したいカラムのシステムidを取得する */
SELECT @COLUMN_ID = column_id FROM sys.columns 
WHERE object_id = @TABLE_ID AND name = @COLUMN_NAME

/* 削除したい制約名を取得する */
SELECT @CONSTRAINT_NAME = name FROM sys.sysobjects 
WHERE id = 
 (SELECT constid FROM sys.sysconstraints 
  WHERE id = @TABLE_ID AND colid = @COLUMN_ID)

/* 制約を削除する */
EXEC('ALTER TABLE '+ @TABLE_NAME + ' DROP CONSTRAINT ' + @CONSTRAINT_NAME)

/* カラムを削除する */
ALTER TABLE 削除したいテーブル DROP COLUMN 削除したいカラム
SQL SERVERでDEFAULT等、制約付きのカラムを削除する - メモス\(^o^)/

Microsoft SQL Server Migration Assistant(SSMA)に関するリンク

SSMA : mySQL等 → MS SQLへの移行ツール

【ACC2010】 「ファイル」タブから「パッケージと配布」が消えてしまった場合

  1. [ファイル]タブを選択
  2. [オプション]を選択
  3. [アドイン]を選択
  4. すると、「アクティブでないアプリケーション アドイン」の一覧の中に「Microsoft Access Package Solution Wizard 2010 COM Addin」があるはず
  5. そこで左下の[設定]ボタンをクリック
  6. 「COMアドイン」のダイアログが表示されたら、「Microsoft Access Package Solution Wizard 2010 COM Addin」の項目にチェックマークを付けて[OK]を押す
  7. オプションの画面は閉じてしまっているので、もう一度開き直し、それが今度は「アクティブなアプリケーション アドイン」になっていることを確認
SOHOの散歩道: 消えたパッケージソリューション

空白を入力するとMSACCESSが落ちるようになった

[現象] テキストボックスに空白を入力すると、いきなり落ちるようになった。
[経過]
  • イベントログを確認すると、KERNELBASE.DLLでエラーが発生している。
  • 参照設定も異常なし
  • /decompile しても解消せず
  • 原因不明…
[結果]

日本語入力が、Baidu IME になっており、MS IME に戻したら問題は解消した。


  • Baidu IME (に限らず?)ではスペースバーに何かしら機能があるのかも?
  • 面倒くさいので Baidu IME は削除
  • ダウンロードアプリのインストール時に同時にインストールされたらしい

64bit Windows のコンパネでは 32bit ODBC の設定ができない

32bit版Officeは、32bit版のODBCを参照する。
コンパネのODBCアドミニストレータは64bit版を扱う。

→ 32bit版OfficeのODBC設定は、32bit版の ODBCアドミニストレータで行う。
%windir%\SysWOW64\odbcad32.exe

参考: