Uchidas | News | Family | Yasuo | Michiko | Miho | Yuuta | Ai | あそぼーど


VBAワールドは、Excel VBAおよびVBAに関する情報交換や会議を行うための専用ボード(掲示板)です。
ご利用案内はこちらです。書き込みはここです。気軽に書き込んでください!!


過去の掲示 1997年 1998年 1999年 最新


はじめまして。まだまだVBA初心者のらんらんです。 早速ですが、エクセルからデータベース(アクセス)にアクセスする マクロを書いているのですが、そのDBのパスが間違っていると実行時エラーになりますよね。で、それを“On Error GoTo 〜”で処理したのですが、このステートメントって、エラーが起きなくても実行されてしまうじゃないですか。それで質問なんですが、 “もし実行時エラーが起きたら、On Error GoTo 〜に飛ぶ” というようなコードを書きたいのですが、どんなふうに書けば良いのでしょうか? お分かりの方がいましたら、ご教示下さい。
らんらん <mfujii@sqc.co.jp>
東京, - Monday, March 29, 1999 at 15:50:20 (JST)


誰かフォーム上の[演算フィールド]の計算結果を「レコード更新時」などで
テーブル上のフィールドに自動的に書きこむ方法を教えてください!!!!
どなたか手を差し伸べてください。
猪爪 正人 <mart@mbf.sphere.ne.jp>
神奈川県, - Saturday, March 06, 1999 at 23:40:00 (JST)
EXCEL95で「参照設定」をVBA側から設定したい。 EXCEL97では、方法があるみたいなのですが、 EXCEL95では、エラーになってしまいます。 どなたかご指導願います。
laccie <fdformat@geocities.com>
ちば, - Friday, March 05, 1999 at 23:47:43 (JST)
>> エラーは下記の部分で起こります。
>> Workbooks("統合マクロ").Worksheets("マクロ").Range("ブック数").Value = b
>> エラー内容は「インデックスが有効範囲にありません。」です。
Workbooks("統合マクロ").Worksheets("マクロ").Range("ブック数")と言う オブジェクトがないと怒られますので、
If オブジェクト Is Nothing Then
  オブジェクトが無いときの処理(実行終了、オブジェクトの作成など)
Else
  オブジェクトに対する作業
EndIF
と(私の場合は)しています。
ご参考になりますかどうか。
<HCE02223@nifty.ne.jp>
千葉県, - Monday, February 22, 1999 at 13:49:23 (JST)
はじめまして、私は今ACCESS97で顧客管理を作成しているのですが、 演算フィールドの合計利用金額÷演算フィールドの利用人数で、平均単価を出したんですけど その平均単価をもとに、パラメータークエリーで抽出するとオーバーフローしたり、全員抽出されたりしてしまいます、どなたか解決方法を教えて頂けませんか?
猪爪 正人 <mart@mbf.sphere.ne.jp>
神奈川県, - Tuesday, February 09, 1999 at 23:54:34 (JST)
私は高等学校に勤務しております吉川と申します。 現在、学校現場で成績処理システムを作るのにACCESS97を使って悪戦苦闘しております。 ところが私の不勉強というか努力不足なのですが、ACCESS97において順位付けをする方法がどうしてもわかりません。 たとえばテーブルにおいて、「出席番号」「氏名」「国語期末素点」「順位」というフィールド名を設定した場合、この「順位」フィールドのセルに国語の点数による順位付けの結果を返したいのですがどのような設定(関数作成?)をすればよろしいのでしょうか? どなたかご存じの方いらっしゃいましたらこの迷える子羊にアドバイスいただけませんでしょうか?
吉川重宏 <meikou@mail.dddd.ne.jp>
兵庫県, - Monday, February 08, 1999 at 12:58:09 (JST)
先ほどの投稿でメールアドレスを間違って入力してしまいました。 正確なアドレスは sato_t@mail.go.ne.jp でした。 申し訳ありません。
さとちゃん <sato_t@mail.goo.ne.jp>
- Wednesday, February 03, 1999 at 09:36:49 (JST)
Access97のテーブルのレコードをVBAでFDに固定長レコードとして出力するのですが、 もし1枚目のFDの容量が途中でいっぱいになった場合には分割して2枚目のFDを差し替えて さらにファイル名を変更して(ファイル名2.txtような形で)続けて保存したいのですが、 このようなことは可能でしょうか?またいいアイデアがあればお教えください。 よろしくお願いします。
さとちゃん <tsato@mail.goo.ne.jp>
東京都, - Wednesday, February 03, 1999 at 09:33:14 (JST)
ぽうさん こんにちは

>吉田さんのケースでは常に拡張子付きの名前を使えば良いみたいですよ。

>WindowオブジェクトのCaptionプロパティも、特に変更していなければ
>拡張子付きの名前を返しました。
>なので、基本的には、Caption を取得した場合も、Windows(...) に
>指定する場合も、拡張子付きの名前のつもりでマクロを書いて
>大丈夫のように思います。

なるほど!!ありがとうございます。
これで安心してかけます。(^^)
他しかにそういう話は聞いた事無いし、見た事無いですね。
どうもでした。   

BUMPER@江戸
BUMPER <ke-mochi@system.hitachi.co.jp>
江戸, - Tuesday, February 02, 1999 at 22:25:13 (JST)


BUMPER さん こんにちは

吉田さんのケースでは常に拡張子付きの名前を使えば良いみたいですよ。

WindowオブジェクトのCaptionプロパティも、特に変更していなければ
拡張子付きの名前を返しました。
なので、基本的には、Caption を取得した場合も、Windows(...) に
指定する場合も、拡張子付きの名前のつもりでマクロを書いて
大丈夫のように思います。

でわ。(^^)/

ぽう
- Tuesday, February 02, 1999 at 11:39:19 (JST)
ぼうさん、こんにちは。
芳坂さんでしたか。これはどうも。

 >数年前ですが、O2にいたことがあるもので。
いつもお世話になっております。(笑)
奇遇ですね。これからもよろしく。

マクロ拝見しました。・・・使った事のないコマンドが多いな・・・(^^;;
使い方が片寄ってるかもしれない・・・
調べて解析してみます。ありがとうございます。

  >でも、それを調べて、処理を分ける必要も特にないかも。何かあるかな?
ちょうどいいのが、吉田さんの例です。(吉田さん、ごめんなさい)
特に誰が使うかわからないときとかに、拡張子を付けたり付けなかったり。
今ちょうど、似たようなのを作っているので、使わせてもらおうかと思ってます。(^0^)
では。

BUMPER <ke-mochi@system.hitachi.co.jp>
江戸, - Monday, February 01, 1999 at 20:55:57 (JST)
BUMPER さん こんにちは

芳坂です。
メールアドレスは以前、Excel質問箱で拝見しました。
数年前ですが、O2にいたことがあるもので。(^^)

SHGetFileInfo のサンプルを書いてみました。
http://ww1.cnet-na.ne.jp/h/housaka/excel/dispname.txt

でわ。(^^)/

ぽう
- Monday, February 01, 1999 at 20:18:20 (JST)
管理人様
犯人は私です。
どうやらどこかに<B>タグを置き忘れたらしく、以下の文が全て太字になってしまいました・・・
決してわざとじゃありません!!(<H1>とかじゃなくてよかった)

お手数ですが、その部分を消してくれませんか。お願いします。
ついでにこの書き込みも消してください。
皆さんもタグ使うときは気を付けましょう、って、私だけかもしれない・・・(^^;;
失礼しました。

BUMPER <ke-mochi@system.hitachi.co.jp>
江戸, - Monday, February 01, 1999 at 18:49:59 (JST)

ごめんなさい、”>”付けるの忘れてわかりにくくなってしまった・・・
前後で理解して。ねっ、ねっ。
江戸のBUMPERでした。
BUMPER <ke-mochi@system.hitachi.co.jp>
えど, - Monday, February 01, 1999 at 17:36:48 (JST)

ぼうさん、こんにちは
レスどうも。

>それに、その人がどういう設定をしているのか、Excelで取得できるのかな?

Excel VBA では見た記憶がないです。
Shell API にはあるかも。とりあえず、ファイルの表示名は SHGetFileInfo
という API で取得できるので、適当なファイルで拡張子が付いているかどうか
調べてもわかると思います。
でも、それを調べて、処理を分ける必要も特にないかも。何かあるかな?

ごめんなさい、APIわからないんですぅ。お勉強不足でして・・・(^^;;;;;
でも何があるか見てみます。


>江戸

ということは、もしかしてMHとか?
(あ、あそこは江戸じゃないか。)

ん?

あなたは一体どこの方?
今までメールアドレス書かなかったけど、私がいるのはまさしくMHビル
(日立システムプラザ新川崎 確かに江戸じゃないけど)
どちら様でしょうか。
勘違いだったら、ごめんなさい・・・
BUMPER <ke-mochi@system.hitachi.co.jp>
江戸!!, - Monday, February 01, 1999 at 17:24:18 (JST)

BUMPER さん こんにちは

>・・・なんで、エクスプローラなんだろう??

さ、さあ・・・(^^;)

>それに、その人がどういう設定をしているのか、Excelで取得できるのかな?

Excel VBA では見た記憶がないです。
Shell API にはあるかも。とりあえず、ファイルの表示名は SHGetFileInfo
という API で取得できるので、適当なファイルで拡張子が付いているかどうか
調べてもわかると思います。
でも、それを調べて、処理を分ける必要も特にないかも。何かあるかな?

>江戸

ということは、もしかしてMHとか?
(あ、あそこは江戸じゃないか。)

でわ。(^^)/

ぽう@くまうさ
- Monday, February 01, 1999 at 16:14:09 (JST)

ぼうさんへ

>エクスプローラのメニューで[表示]-[オプション][表示]
>[登録されているファイルの拡張子は表示しない]をオンにすると
>Workbooks("Book1") でも動作しました。
Oh!
(感嘆の意)
なるほどね。うん、拡張子。そおか、そおか。
こんなとこにも影響するんだね!!
・・・なんで、エクスプローラなんだろう??
それに、その人がどういう設定をしているのか、Excelで取得できるのかな?
便乗ですが、わかったら教えてください。(^^;
BUMPER
江戸, - Monday, February 01, 1999 at 10:17:33 (JST)

ぽうさん
こんな設定があったとは知りませんでした。
これで悩みはなくなりました。

ありがとうございました。
吉田
宮城県, - Saturday, January 30, 1999 at 14:25:41 (JST)

吉田さん BUMPERさん こんにちは

エクスプローラのメニューで[表示]-[オプション][表示]
[登録されているファイルの拡張子は表示しない]をオンにすると
Workbooks("Book1") でも動作しました。(Excel97初期版 Windows95)

でわ。(^^)/

ぽう
- Saturday, January 30, 1999 at 13:29:57 (JST)

BUMPERさん

Workbooks("統合マクロ").Activate
のところでエラーが起きました。
Windows("統合マクロ.Xls").Activate
Worksheets("マクロ").Range("ブック数") = b
と書き換えると上手くいきました。これで解決致しました。
ただ、パソコンによって読める場合と読めない場合があるのはまだ謎なんです。もしこれについて何か分かったらご意見ください。
BUMPERさんありがとうございました。
吉田
宮城県, - Saturday, January 30, 1999 at 09:47:21 (JST)

こんにちは、吉田さん。

>確認したのですが名前は同じでした。
う〜む名前同じですか。
それでは

Workbooks("統合マクロ").Activate
Worksheets("マクロ").Activate
Range("ブック数").Activate

を、実行してみてどこでエラーが起こるか、チェックしてみてください。
ところでこのブック、開いてますよね。
開いてないと当然の事ながら、エラーになります。
・・・これ以上は、どうもお手上げなので、
誰か助けて!!

では。
BUMPER
ちきゅう, - Friday, January 29, 1999 at 16:09:55 (JST)

BUMPERさん アドバイスありがとうございます。確認したのですが名前は同じでした。

今日さらに違うパソコンでエラーが起きてしまいました。同じプログラムなににどうしてでしょうね。コントロールパネルの設定がちがうのでしょうか?
吉田
宮城県, - Friday, January 29, 1999 at 13:20:43 (JST)

ごめんなさいちょっと長くなってしまいました(^^;;;

つい気合いが入ってしまって・・・
BUMPERでした。
BUMPER
地球, - Friday, January 29, 1999 at 13:01:31 (JST)

あ!


ここタグ使えたんですね〜。失礼しました。
こんにちは、辻 幸宏さん。BUMPERです。

>FOR〜NEXT等のループを使って、セルに連続して値を代入するときに、
>縦の列は数字なので簡単なのですが、横列はアルファベットなので、非常に困ってしまいます。
>特に、代入したい値が100とかあると大変です。 今までは、気合でマクロを1つ1つ書くか、
>ifを使ってのZ次はAAとかってやっていたんですけど、なんか良い方法ありませんか?

そこで、ちょっと作ってみました。


Option Explicit
Option Base 1

Sub al_count()
Dim al As String, al_arr(26) As String
Dim tmp As String, cell_value As String, al_1 As String
Dim I As Integer, max As Integer, Y As Integer, Z As Integer

al = "ABCDEFGHIJKLMNOPQRTUVWXYZ"

For I = 1 To 26
  al_arr(I) = Mid(al, I, 1)
Next I

max = 100
Y = 1
al_1 = ""
For I = 1 To max
  If Y >= 26 Then
    Z = Z + 1
    al_1 = al_arr(Z)
    Y = 1
  End If
  
  cell_value = al_1 & al_arr(Y)
  ActiveCell.Value = cell_value

  Y = Y + 1
  ActiveCell.Offset(0, 1).Activate
Next

End Sub


これを実行すると、ABC・・・AAABAC・・と100個のセルに、横に表示されます。
最初のループは、A−Zまで配列に入れているところ。ひとつひとつ入れるの面倒だし。
で、maxには入力する文字数。al_1 & al_arr(Y)のところで、2文字の文字列を作っている。al_1の初期値は""。
だから、最初は一文字。これが、ループの26回周期でA、B、C・・と変わっていく。
あとは・・・解析してみて(^^;;
他にもやり方あるかもしれないけど、とりえず。
では
BUMPER
地球, - Friday, January 29, 1999 at 12:54:39 (JST)


こんにちは吉田さん、思いっきり久し振りに書きます。BUMPERと申します。 >エラーは下記の部分で起こります。 Workbooks("統合マクロ").Worksheets("マクロ").Range("ブック数").Value = b >エラー内容は「インデックスが有効範囲にありません。」です。 どなたか原因がお分かりの方宜しくお願い致します。 これは、ブック、シート、セル何でも、この名前のものがないときに出るエラーです。 私もよく(たまにかな?)出ます。(^^;; まず考えられるのは、ブック、シート、セルの名前が変わってしまって、エラーが出るということ。 これ以外は、まず考えられません。(と思う) 特にセルなんて、すぐに名前が変わったかどうかは分からないので、これもチェックしてください。 もし名前があっていて、このエラーが出るようならば・・またここにかいてください。 では。
BUMPER
地球, - Thursday, January 28, 1999 at 17:48:04 (JST)


どーも、はじめまして。 VBAを始めて1週間の超ビギナーな私ですが、一つ大問題(?)にぶつかっています。 FOR〜NEXT等のループを使って、セルに連続して値を代入するときに、 縦の列は数字なので簡単なのですが、横列はアルファベットなので、非常に困ってしまいます。特に、代入したい値が100とかあると大変です。 今までは、気合でマクロを1つ1つ書くか、ifを使ってのZ次はAAとかってやっていたんですけど、なんか良い方法ありませんか? 非力な私に、どうぞお力をお貸し下さい。

辻 幸宏 <tuji@cmspios.cms.mei.co.jp>
岐阜県, - Thursday, January 28, 1999 at 13:47:22 (JST)


はじめまして,今日は!! EXCEL97を起動しっぱなしで,1時間に一回マクロを起動したいんですが,何かいい方法がありましたら教えてください. 一ヶ月以上動かしたいんですけど・・・. お願いします.


ユウコ <yuko@habilis.co.jp>
東京都, - Wednesday, January 27, 1999 at 14:54:04 (JST)


はじめまして吉田と申します。ExcelでVBAを使用して2ヶ月ほどの初心者です。VBAで、あるプログラムを作成して正常に実行されたのですが、社内の別のパソコンではある記述でエラーが起こってしまいます。その一台のパソコンだけなので何かの設定が違うのではないかと思うのですが、原因が分かりません。エラーは下記の部分で起こります。 Workbooks("統合マクロ").Worksheets("マクロ").Range("ブック数").Value = b エラー内容は「インデックスが有効範囲にありません。」です。 どなたか原因がお分かりの方宜しくお願い致します。
吉田 <ynao@f.ndk-j.co.jp>
宮城県, - Tuesday, January 26, 1999 at 15:30:47 (JST)


データを抽出するとき罫線も抽出されてしまいます値だけ抽出できないか教えて下さい
松岡進 <matu@eva.hi-ho.ne.jp>
富山県, - Sunday, January 17, 1999 at 00:43:19 (JST)


ACCESS97で帳票を作成中です。あるプログラムでフッターを1ページ目だけに出力させるというものがありまして、プロパティの設定がわからなくて困っております。教えてください。
Holly <horihori@jmail.co.jp>
山口県, - Thursday, January 14, 1999 at 17:57:38 (JST)