[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/30 05:22 / Filesize : 296 KB / Number-of Response : 978
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part23



1 名前:既定のプロパティさん mailto:sage [2012/01/29(日) 00:05:13.16 ]
01 pc11.2ch.net/test/read.cgi/tech/1054356121/
02 pc11.2ch.net/test/read.cgi/tech/1168308855/
03 pc11.2ch.net/test/read.cgi/tech/1180192018/
04 pc11.2ch.net/test/read.cgi/tech/1189814602/
05 pc11.2ch.net/test/read.cgi/tech/1197448064/
06 pc11.2ch.net/test/read.cgi/tech/1205231499/
07 pc11.2ch.net/test/read.cgi/tech/1212587819/
08 pc11.2ch.net/test/read.cgi/tech/1219673793/
09 pc11.2ch.net/test/read.cgi/tech/1228372971/
10 pc12.2ch.net/test/read.cgi/tech/1235332603/
11 pc12.2ch.net/test/read.cgi/tech/1241885130/
12 pc12.2ch.net/test/read.cgi/tech/1247566074/
13 pc12.2ch.net/test/read.cgi/tech/1254281104/
14 pc12.2ch.net/test/read.cgi/tech/1262748898/
15 pc12.2ch.net/test/read.cgi/tech/1271261239/
16 hibari.2ch.net/test/read.cgi/tech/1280045912/
17 hibari.2ch.net/test/read.cgi/tech/1289182437/
18 hibari.2ch.net/test/read.cgi/tech/1298240666/
19 hibari.2ch.net/test/read.cgi/tech/1305754555/
20 hibari.2ch.net/test/read.cgi/tech/1312435844/
21 hibari.2ch.net/test/read.cgi/tech/1316931607/

前スレ:
Excel VBA 質問スレ Part22
toro.2ch.net/test/read.cgi/tech/1322400978/


593 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 16:57:24.25 ]
補足
UDL01_fPath    ’udlファイルのフルパス

udlファイルにアクセスする前に、udlのData Sourceに格納されたDBファイルの
存在チェックを入れており、その部分ではエラーがないので、
Providerの指定でエラーが起きてると思うんですが分かりません

最初はudlファイルのProviderとData Sourceの値をコード内で指定していたのですが、
その時はエラーはありませんでした
その時の値とをテキスト上にコピーして文字列を比較しても差異はありませんでした


594 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 19:42:42.20 ]
>>592
なんか良くわからんが、たぶん

ADODBCon.Open "FILE NAME=" & UDL01_fPath
MsgBox ADODBCon.Provider

595 名前:デフォルトの名無しさん mailto:sage [2012/03/11(日) 19:59:57.96 ]
>>594
ありがとうございます!!
うまくいきました
こんな見落としで何時間も浪費していたなんて自分が情けない

596 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 16:09:38.74 ]
以前、>>447でカラーパレットについて質問したものです。
ユーザーフォームにボタン表面の色を変えたものを複数並べる
ことによって色を選ぶようにしました。

ボタン一つ一つのクリックイベントにコードを書いたのですが、
イベントの共有やどのボタンが押されたかを識別することによって
コードを簡素化したいのですが、VBAでそういったことは可能でしょうか?

ググったのですが、ブックの共有などの情報ばかりで検索しきれなかったので、
どなたか教えてください。
よろしくお願いします。

597 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 18:41:11.31 ]
application.caller で出来たっけ?

598 名前:デフォルトの名無しさん [2012/03/12(月) 19:51:06.54 ]
オートフィルタをかけた抽出結果のタイトル行を除いた最初の行の、二番目の列から、
データの入っている有効セル全てをコピーするにはどうすればいいでしょうか?

599 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 20:13:22.36 ]
こんばんあ!しつもんだお!

for nextの後にcallでquerytable.addすると処理固まってしまうのですが、どうすれば良いですか?メモリとかバッファとかよくわかりません

600 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 20:17:12.27 ]
すいません。
VBAで32bit符号無し演算をしたいんですが、型がlongじゃダメです。(当然)

どんな技を使えば良いですか?

601 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 21:01:49.30 ]
>>596
Part17で似た質問をして、カラーパレットをクラスモジュールを使って作成したことがあります。
できてはみたものの、クラスモジュールはよく分かりませんでした。

VBやC#なら、どのイベントにどのプロシージャを結びつけるかをプロパティウィンドウで
簡単に設定できるようになっています。

VBAではそういう使い方は向いていないのではないか、と思います。




602 名前:596 mailto:sage [2012/03/12(月) 21:49:46.96 ]
>>597,601
ありがとう。
Application.Callerをググったら、どの例もシート上のボタン等を調べるみたいで、
ユーザーフォーム上のボタンのクリックイベントでは使えないみたいです。

ttp://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1427920774

ここを見ても、601さんが書かれているように気軽にできる感じではなかったので、
ボタンのtagプロパティにカラーコードを書いておいて、activecontrolで識別するようにしました。

603 名前:デフォルトの名無しさん mailto:sage [2012/03/12(月) 23:05:54.84 ]
>599

Long型でユーザー定義変数を作成し、
LSetステートメントで強制的に2つのLong型に分割。
2つのLong型を下位32bitと上位32bitで別々に計算し、
計算後に改めてCurrent型にLsetステートメントで合体。

という方法がある。

「VBA currency型のビット演算」でググるとよろし。

604 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 12:18:48.28 ]
>>603
ちょーthx.

605 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 19:30:37.29 ]
Excel2010

bookname = "D:\data\backup\data_xxxxxxxx.xlsx"

xxxxxxxxxx は作業日付

Worksheets("data").Copy
With ActiveWorkbook
.SaveAs Filename:=bookname
.Close
End With

としてdataシートを別ブックに保存しようとすると、このシートには
Activateになった時に作業をするモジュールがついていて xlsxでは
保存出来ないとExcelに言われてしまうんですが。。。
保存する際にモジュールは要らなくデータだけで良いんですけど
どうすればモジュールを切り離して保存出来るんでしょうか?



606 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 19:41:52.71 ]
>>605
今、手元にExcel2010が無いんで自信ないけど、
.SaveAs Filename:=bookname, FileFormat:=xlOpenXMLWorkbook

とかでどうだろ?
明日会社行けば試せるんだけど・・・

607 名前:605 mailto:sage [2012/03/13(火) 19:59:10.22 ]
すごい!
出来ました。
そのFileFormat指定は初めてです。

ありがとうございます。m(__)m

608 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 20:32:15.03 ]
はろー。ループするとき処理待ちするにはどうすればいいですか?

609 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 20:36:33.61 ]
「こんばんわ、処理町隆史です」という。

610 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 20:43:21.74 ]
おれがずっと探し求めていたのはジャーマンスープレックスもといドゥーイベントカンスーだったようだ…

611 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 21:55:34.65 ]
>>608
DeEvents



612 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 22:05:09.05 ]
OS:XP Home 32bit
Excel:2003

条件を満たした場合、ソースコード自体を書き換える事は可能でしょうか?


613 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 22:24:36.95 ]
>>605-607
Application.DisplayAlerts = False
でいいんじゃないのか

614 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 22:29:45.74 ]
>612

できるけど、OSやExcelのバージョン違いに対する対応なら
#If〜#Then〜#EndIfや#Constの条件付きコンパイルを使うほうがよい。

どうしても書き換えしたいなら、参照設定で
「Visual Basic for Applications」に参照設定をすれば
VBEのコードそのものを直接VBAで動かせるようになる。


615 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 22:35:10.19 ]
>>613
Application.DisplayAlerts = False

これは単にメッセージ出すのを抑制するだけですよ?

616 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 23:37:57.80 ]
>>615
xlsxで保存したらマクロは保存されない
警告なしで保存できるんだからそれでいいだろ


617 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 23:53:25.53 ]
>>613,616

なるほど。そういう手もあったんですね

618 名前:デフォルトの名無しさん mailto:sage [2012/03/13(火) 23:55:37.82 ]
>>615

お前がずれてますよ
605もアホだがエスパーすると…



警告なしに保存したいということだろ
だからDisplayAlerts=Falseが合っている
FileFormat指定が的外れ
警告はxlsxで保存するとマクロは保存されませんよ
ってことだからな

619 名前:586 [2012/03/14(水) 01:29:08.85 ]
とりあえず、「Copyメソッドが失敗しました」のエラーが起こる簡易版のファイルを
作成しました。

www.vivi-loda.mydns.jp/index.php?m=dp&n=file1526
DLkey:asd

test1の方で実行しても、test2で実行しても、
こちらの環境(Win7 HomePreminum SP1(32ビット版)、Excel2003 SP3、メモリ3G)
だと、44シート追加したあたりで、当該エラーが出ます。

このファイルだと、マクロではエラーが出るものの、手作業でシート
追加はできますが、とりあえずこのエラーを回避したいです。(できるものなら)

ちなみにこのマクロを実行すると、一時的にPCが重くなったりするので、お気をつけください。


よろしくお願いいたします。

620 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 02:19:08.42 ]
>>619
自分の環境ではエラーにならない
Win7 Ultimate SP1 (64bit) メモリ8GB、Excel 2007 SP2

621 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 03:45:17.31 ]
>>619
Vista Ultimate SP2 32bit Excel2007 SP3もエラーなし
ちなみにシート500まで追加させても問題なし
2003の問題か、PCの問題だな

昔ディスプレイドライバー辺りのバグでExcelでメモリ不足出たことあったが
つかWin7でExcel2003とか動作保障あるのか



622 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 04:00:24.00 ]
>>619
流れ読んでないけど、ワークシートのコピーは複数回実行するとマクロでなぜかエラーになる現象がある。
標準のワークシートをコピーする関数を使うのはやめて、「ワークシートを追加→セル全体をコピー→ペースト」
という関数を作っておくと楽。

623 名前:622 mailto:sage [2012/03/14(水) 04:19:36.65 ]
ちなみに >>619 のファイルを実行したらうちの環境
・Win7 Ultimate XP SP3 / Excel 2003 SP3 / メモリ3G
・Win7 Ultimate SP1 x86 / Excel 2003 SP3 / メモリ3G
・Win7 Ultimate SP1 x64 / Excel 2003 SP3 / メモリ8G
でも「実行時エラー '1004':

Worksheet クラスの Copy メソッドが失敗しました。」は出ます。
(エラーが発生する回数はランダム)

念のため確認ですが、手作業で「シートの追加」はできても「シートのコピー」はできないですよね?
で、ファイルを開き直すといったん復活して、再度実行すると同じ感じでエラーになる(毎回エラーに
なる回数は違う)ってやつですよね?

というよりか、マクロを使わないでも手動で何十回もシートをコピーすると、シートがコピーできないが
シートの追加はできるという現象は発生します。標準のシートコピーは使わないのがよいと思われます。

でも、この現象ってExcel 2007だと発生しないのか。知らなかった。

624 名前:622 mailto:sage [2012/03/14(水) 04:22:25.46 ]
Win7 Ultimate XP SP3ってなんだ?そんなOSネーヨ(^_^;)
Win XP SP3の間違いです・・・。

625 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 06:50:26.27 ]
外部音源やMIDIデバイスを使わずにbeep音をディストーションギターの16和音にするにはどうすればいいでしょうか

626 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 06:59:09.15 ]
oshiete.goo.ne.jp/qa/1822561.html
No1参照

627 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 12:09:50.35 ]
縦のrangeを横のrangeにコピーするにはどうすれば良いですか

628 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 12:30:24.18 ]
>>627
マクロを記録してみろ

629 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:08:15.94 ]
範囲指定して数値のセルのみ抽出するにはどうすれば良いですか

630 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:24:44.23 ]
>>629
www.google.co.jp

631 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:32:20.94 ]
>>629
IsNumeric



632 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:42:11.29 ]
do loop 内の処理で繰り返した回数を得るにはどうすれば良いですか

633 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:43:03.45 ]
googleでdo loopって打ち込んだら画面が回ったwww

634 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:49:15.82 ]
>>632
変数作って数えさせろよ

635 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 17:54:30.78 ]
どう書けばよいでしょかお?

636 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 18:05:08.53 ]
Dim count as Integer
Do While true
    count++
Loop

637 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 18:07:40.23 ]
++は使えなかったかも
Dim count As Integer: count = 0
Do While True
count = count + 1
Loop

638 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 18:14:02.46 ]
あ、成る程ですthx

639 名前:612 mailto:sage [2012/03/14(水) 22:30:17.63 ]
>>614
ありがとうございます
レスを参考に調べてみます

640 名前:デフォルトの名無しさん [2012/03/14(水) 22:55:04.43 ]
VBAだけで就職先はあるのでしょうか?
Javaなどは募集をよく見ますが…

あとVBAとJavaは皆さんどのくらいでできるようになりましたか?
専門学校で学んだのですか?

641 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 22:59:58.12 ]
>>640
すれ違いなような



642 名前:デフォルトの名無しさん mailto:sage [2012/03/14(水) 23:45:13.32 ]
>>640
VBAだけで就職は無理
Excelが使えるって条件の事務職員の募集なら見たことあるけど

643 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 00:14:07.98 ]
グラフの縦軸の値の最大、最小、目盛の間隔は自由に決めることはできますが、横軸もできますか?
Excel2003、2010どちらでもいいので、できるならばやり方を教えてください。
よろしくお願いします。

644 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 00:48:20.37 ]
>>643
縦でも横でもやり方は同じ
軸を右クリックすれば設定画面が出る

645 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 00:51:34.04 ]
           __
        , ‐' ´   ``‐、             / ̄:三}
.     /,. -─‐- 、.   ヽ        /   ,.=j
 _,.:_'______ヽ、 .!       ./   _,ノ
  `‐、{ へ  '゙⌒ `!~ヽ. !     /{.  /
    `! し゚  ( ゚j `v‐冫   , '::::::::ヽ、/     そんなことよりネコ投げようぜ!
.    {.l   '⌒      ゙ 6',!   / :::::::::::::::/ __
.     〈  < ´ ̄,フ  .ノー'_ , ‐'´::::::::::::::;/ (_ノ)‐-、
.      ヽ.、 ` ‐", ‐´‐:ラ ':::::::::::::::: ;∠.   ヽ_}  ゙ヽ
        ,.r` "´  /:::::::::::::::::::ィ´  `ゝ  !、  /
     /       / :::::::::::::::: ;な   /´\ /   r'\
.     i      ! ::::::::::::::/ る | .!::::::::/ヽ、.._!ヽ. ヽ、
     {      {:::::::::::;:イ / し ‖i:::::::/:::::::::::::/  \
.      ヽ       ヽ,.ァ‐'´ /ヽ ま ,/`ヽ、::::::::: /

i.imgur.com/iMDi4.jpg

646 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 01:14:33.54 ]
>>644
こんな時間にレスありがとうございます。
今2010でやってるのですが、右クリックすると軸の書式設定というメニューが
出るのですが、縦軸と横軸では項目内容が違っています。
横軸では、最大、最小、値の間隔はないです。
見てるところが違うのでしょうか?

647 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 01:50:23.30 ]
>>646
グラフの種類によっては変更できない
たとえば散布図だとどっちの軸も同じように設定が変えられる

648 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 01:51:43.73 ]
>>642
そのExcelが使えるってどの程度のレベルの使えるなの?

男でもある?

649 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 02:01:33.59 ]
>>647
ありがとうございます。
散布図で何とかできました。

650 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 02:05:46.33 ]
>>648
バイト価格だね

651 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 02:17:39.55 ]
VBAが使えるといえば普通は
Oracle SQLが使えるというのも含む



652 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 05:00:10.04 ]
VBAが正しく使えれば
DelphiだろうがJavaScriptだろうがJavaだろうがCだろうが
そんなに難しくない筈
むしろVBAのほうが難しいくらいかも
ただSQLはちょっと毛色が違うからVBAが使えることとSQL
が使えるということは同じだとは思わないほうがいいかも

653 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 06:51:56.55 ]
vbaで使うデータベースはなにが良いのですか?いまはシートにデータ並べてますけれど

654 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 07:03:43.75 ]
ググってきたら

655 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 08:17:32.38 ]
>>625
波形を気合いで計算してWAVの頭の構造体を気合いでくっつけてdirectsound8

656 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 08:22:26.53 ]
>>653
一番相性がいいのはもちろんAccess

657 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 16:53:47.11 ]
こんにちあ!

コード書き終えたの
ですけど12時間以上処理してるの
でアドバイスくれし

658 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 18:07:40.25 ]
コードを載せろよ

659 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 18:30:36.11 ]
>>657
ScreenUpdatingとか、よくある高速化テクニックは使ってる?

660 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 18:33:58.45 ]
XP/Excel2000
csvファイルを出力させたいのですが、見よう見まねで固定のファイル名が出せるところまでは辿り着きました。
次にファイル名をセル参照なり変数でつけたいのですが、どうしたらいいでしょうか?

Private Sub CommandButton1_Click()
Const cnsFILENAME = "\test.CSV"
Dim FSO As New FileSystemObject
Dim TS As TextStream
Dim GYO As Long
Dim GYOMAX As Long

GYOMAX = Range("C65536").End(xlUp).Row
Set TS = FSO.CreateTextFile( _
Filename:=ThisWorkbook.Path & cnsFILENAME, _
Overwrite:=False)
GYO = 3
Do Until GYO > GYOMAX

TS.WriteLine FP_EDIT_CSVREC(GYO, 2, 3)
GYO = GYO + 1
Loop
TS.Close

MsgBox "OK"

Set TS = Nothing
Set FSO = Nothing
End Sub

661 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 19:32:54.15 ]
>>660
Dim cnsFILENAME As String
cnsFILENAME = "\test.CSV"

とか

cnsFILENAME = Range("C5").Text

とか



662 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 20:05:05.30 ]
とりあえずscreenupdating使って見たんだけど、最小化してまた大きくしたら画面真っ黒になっちゃったよ

進行状況だけ表示しとけばよかったかなあ

663 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 20:13:18.21 ]
関数をワークシートにたくさん埋め込んでいるんだったら、作業中はOffにして作業後にOnに戻す
これはかなり効く(たくさん埋め込んでいたらの話だけど)

664 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:12:15.18 ]
どうやってoffにするのですかお

665 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:15:09.26 ]
もしかしてワークシート最小化にしてたらマクロ処理しないのですかお

666 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:19:50.44 ]
まずモニターのスイッチを切れ

667 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:22:44.25 ]
>>665

マクロの記録やってみれ

Excel2010では↓のようになった

Application.Calculation = xlManual

↓もとに戻す
Application.Calculation = xlAutomatic

668 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:23:06.41 ]
画面更新ができないような処理してるからだと

669 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:30:59.55 ]
>>640

VBA初心者レベル、Excelは基本操作もおぼつかない
当然ながらブラインドタイプとかはできないし、
ほかの言語などもまったく分からない。
というレベルで
週5日*1日8時間*時給1800円の仕事してます。
作業内容は一日分ずつのCSVファイルを一か月分にまとめたり
それをグラフにしたりするだけです。
チョー楽だけど退屈です。

670 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:42:43.01 ]
そういうことを出来るようにしてくれた人がいたってだけでしょ

671 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:44:29.82 ]
どういうこと?



672 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:45:11.50 ]
金で時間を買われてるな

673 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:48:16.20 ]
初心者っていう人がVBAでそういうことを出来るようにすることが出来るのかなって感じなんだけど

674 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:48:39.69 ]
>>672
時間を売って金を得て
金を使って時間を買うということ?

675 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:50:45.28 ]
ノルマこなして、お金もらってるだけでしょ

676 名前:669 mailto:sage [2012/03/15(木) 21:56:00.37 ]
>>673
会ったこともない誰かが作ったマクロを使ってます。
ところどころパラメータ(セルの行とか列とかの指定)を書き換えて実行するだけです。

>>675
ノルマは特に無いです
というかむしろ早く終わりすぎたらマズイらしくて
一年かけてダラダラやってます。

677 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:59:39.96 ]
VBA使って効率化出来るのを目の当たりに見ると怒る人がいる、世の中だからね
コンピュータで処理できるようにしたのに、
コンピュータが勝手に作ってる
とか、言われたときは...

678 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 21:59:45.52 ]
結局669はVBAを使ってはいるけれど
プログラミングの仕事ではないってこと?

679 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 22:01:22.71 ]
>>676
お役所?

680 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 22:04:50.80 ]
>>676
大阪市?
ここだけの話で

681 名前:676 mailto:sage [2012/03/15(木) 22:09:47.46 ]
>>678
一応、仕事の名目は
エクセルでのデータ整理です

>>679
公務員じゃないけど似たようなもんです。
業務の成果は求められてなくて、
ただ単に労働時間分の拘束をされてるだけって感じです。

>>680
ちゃいまっせ、ホンマにちゃいまっせw




682 名前:デフォルトの名無しさん mailto:sage [2012/03/15(木) 23:12:01.77 ]
マクロの記録てこういうときにつかえるんだなあみつを

683 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 00:43:25.24 ]
ちょこっとわからない程度なら、部分的にマクロ記録のコードコピペしてます。
スピードも全く問題ないことがほとんど、使えなかった頃より実質こなせる業務がかなり増えた。

684 名前:586 [2012/03/16(金) 05:51:54.44 ]
忙殺されて、、、レス遅くなってすみません。

>>620->>624
皆さん、ありがとうございます。

会社のPC(WinXP Pro SP3/Excel 2003 SP3/メモリ2G)
でもやはり44シート目で実行時エラーでした。

手持ちのもう一つのネットブック(Win7 32bit版/Excel2010/メモリ1G)
で試したら、エラーは出ず、なんと、500シートでも動きました。

2003のバグですかね。。

ありました・・・これですね。
support.microsoft.com/kb/210684/ja

-------
ブックに定義済みの名前を付けて保存したり、次のサンプル コードのように、ブックを閉じることがなく複数回ワークシートをコピーするとこの問題が発生することができます。
-------

発生することができます・・って・・・・

685 名前:586 [2012/03/16(金) 05:52:55.59 ]
>>623
ええと、マクロ実行して、1004が出たての未保存のブックは、シートの追加はできても、シートのコピーはできません。
(エラーも出ず、一瞬画面がブレたようになって無反応)
いったん、保存して開きなおしたファイルだと、シートのコピーはできますが、再び、マクロを実行すると、

実行時エラー'1004':
シートの名前をほかのシート、Visual Basic で参照されるオブジェクト ライブラリまたはワークシートと同じ名前に変更することはできません。

となって止まり、
ブックをみると、test1を押した場合は、「テンプレ(2)」を、test2を押した場合は、「テンプレ2 (2)」のシートを追加しようとしてるところで、また同じ名前で追加しようとして、止まってる感じ・・・
ActiveSheet.Name =
がうまくいってないような感じです。

しかもエラーの回数はなんか毎回、44です。。PCに他にどんな重い処理をさせていても44。。会社のPCもそうでした・・。

なんだコレ・・私のやり方が何かおかしいのか・・・

686 名前:586 [2012/03/16(金) 05:55:19.72 ]
このKBを見る限り、2007でも、2010でも発生するみたいですね。。
www.microsofttranslator.com/BV.aspx?ref=CSSKB&lo=SS&from=en&to=ja&a=http://support.microsoft.com/kb/210684/en-us?fr=1

テンプレートで保存して呼び出して使えって・・・。Vlookupで引っ張ってて、複数のシートがあっても大丈夫なんかな・・・

それとも100シートごとに保存するか・・・

それともシート挿入→末尾に移動→値の貼り付け→書式の貼り付け→印刷設定の貼り付け
という関数を作っておくか・・・

印刷設定がちゃんとなってるシートの印刷を手前において、反映したいシートを複数選択し、
印刷設定を開いてそのままOKボタンを押すと、複数のファイルに印刷設定が反映されるって
書いてあって、実際その通りだったけど、ウィンドウ枠の固定と、印刷タイトルの設定が反映されてなかった・・・

これだけ一個一個やるように関数に組み込むしかないのか・・・

687 名前:586 [2012/03/16(金) 05:56:10.36 ]
そろそろ眠い・・・

しかもこの仕事を引き継ぐ人がマクロとか難しくて嫌だから、手作業でやりたいと言い出して、
このマクロは使われない可能性が高くなってきた・・・

中身なんて知らなくていいから、黙ってボタン押せっつーの!くそ・・・!

でも自己満で作るけどさ。

事務の世界っていつもこうなる・・・やっぱり私に事務は向かないのか・・かと言って、バケモンだらけのPGの世界ではこれ以上やってく自信がない・・・

>>677
あるあるあるあるあるある

=Exact() で簡単に同じかどうかのチェックなんて出来るのに、「目視確認でやった方が確実だから、目視でやって」、とか ┐(´д`)┌


チラ裏すみません。眠いです・・・

688 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 08:09:03.03 ]
>>661
サンクス

689 名前:デフォルトの名無しさん [2012/03/16(金) 09:49:02.14 ]
Valueエラーが出るけどどこが悪いか分かる方いますか?
Function sealtime(A As Range, B As Range)

'Application.Volatile '自作関数を自動再計算させます。
Dim time As Double
time = Application.WorksheetFunction.ATAN((B - A) / 1)

If time < 0.005 Then
sealtime = "OK"
Else
sealtime = ""
End If

End Function

690 名前:デフォルトの名無しさん mailto:sage [2012/03/16(金) 09:55:24.55 ]
とりあえず
Application.WorksheetFunction.ATAN
より
Atn
のほうがいんじゃね

691 名前:デフォルトの名無しさん [2012/03/16(金) 10:30:21.14 ]
>>689
ワークシート関数が全部VBAで使えるわけじゃない




692 名前:デフォルトの名無しさん [2012/03/16(金) 11:13:02.48 ]
ダブルクリックで画像を挿入したくてネットで調べて色々コピペして作ったんですけどたまにエラーが出ます
あと画像を開こうとしてキャンセルすると『1004 指定したファイルが見つかりませんでした』って出ます
どこを直せばいいでしょうか お願いします

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim myRange As Range
Set myRange = Range("C2:G10,C312:G21,C24:G32")
If Application.Intersect(Target, myRange) Is Nothing Then
Exit Sub
End If
Dim objFileName As String
Dim objShape As Shape
objFileName = Application.GetOpenFilename _
Set objShape = ActiveSheet.Shapes.AddPicture( _
Filename:=objFileName, _
LinkToFile:=False, _
SaveWithDocument:=True, _
Left:=Selection.Left, _
Top:=Selection.Top, _
Width:=242#, _
Height:=120#)
Cancel = True
End Sub

693 名前:デフォルトの名無しさん [2012/03/16(金) 11:32:07.34 ]
あ なんかいけたっぽい こうしたらスムーズになった

sFile = Application.GetOpenFilename(FileFilter:="gif,.gif")
If sFile = "False" Then Exit Sub






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<296KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef