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


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

●EXCEL・VBA質問スレ Part2●



1 名前:デフォルトの名無しさん [2007/05/27(日) 00:06:58 ]
・まじめにExcelの機能を追及してみようと思う奇特なひと
・スキルがないのに無理やりVBAの仕事を押し付けられた普通のひと
・VBAなんていまさらやりたくないのに業務で仕方なく使っているひと
・とにかく漏れにこんな仕事まわすなと怒っているひと
そんなM$大好きなひとからアンチM$なひとたちまで幅広くカバーするスレです

前スレ
pc11.2ch.net/test/read.cgi/tech/1168308855/

458 名前:デフォルトの名無しさん [2007/07/23(月) 23:36:53 ]
UserFormのUserForm_Initializeで変数と画面の
初期化をしていますが、ここのロジックを通ってUseeFormが
表示されたあと、画面をUnload Meしてブックを保存して閉じると、次回起動時に

「問題が発生したため、Microsoft Office Excelを終了します。
ご不便をおかけして申し訳ありません。」
と出て、強制終了してしまいます。

ただし、次の場合はエラーが出ずに起動できます。
・保存せずに閉じた場合。
・マクロを無効にして起動し、保存した場合(orしない場合)
・VBEを表示させて実行した場合。

デバッグしたらエラーにならず実行されるので、原因がつかめず困っています。

いろいろ手探りでやってみたところ、2回目の起動の時、
UseeFormにあるコントロールにアクセスすると落ちてしまうようです。
例えば、、
 UserForm.lb_KUBUN.Caption = "" とか、
 cb_Save.Enabled = True といった感じです。

UseeFormには200近いラベルがあります。
あとは22のフレームと、14のコマンドボタン、リストボックスとコンボボックスが1つずつで、
テキストボックスはありません。ブックの大きさは1Mくらいです。
Office Updateは最新状態にしてます。

最初は起動できるので、実行後の保存の時になんか悪いもんが残ったりしてるのかなぁという感じです。

みなさま、お心当たりあればどうぞご教示ください。

459 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:53:34 ]
そのフォームをいい時と悪いときでエクスポートして比べてみたらいいんじゃ

460 名前:458 [2007/07/24(火) 00:24:55 ]
エクスポートして比べてみたけど、同じでした。。

461 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 07:16:30 ]
最小限の再現出来るソースを出せ

462 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 23:45:28 ]
検索をするプログラムをもっと簡潔にしたいのですが。
いま2次元配列NK_ryuu(1 To 50, 1 To 15)で
NK_ryuu(x.1)にID
NK_ryuu(x.2)に項目A
NK_ryuu(x.3)に項目B
NK_ryuu(x.4)に項目C
と入っていてxは1から50まであります。
ここであるシートの中から項目ABC全部を持っている行を抜き出すのですが、
今は下のようになっていてforとifを2重3重に使っていてちょっと見た目が汚いです。
しかも項目やxが増えた場合に処理がものすごい勢いで重くなりそうです。
もうちょっと賢いやり方ありませんでしょうか?お願いします。
配列honban()に取得した行番号を格納しています。



463 名前:462続き mailto:sage [2007/07/25(水) 23:46:08 ]
Sub test()
With ActiveSheet
For x = 1 To 50
For i = 1 To 500
If .Cells(i, 2).Value = NK_ryuu(x, 2) Then
If .Cells(i, 3).Value = NK_ryuu(x, 3) Then
If .Cells(i, 4).Value = NK_ryuu(x, 4) Then
honban(j) = i
End If
End If
End If
Next i
Next x
End With
End Sub

464 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 08:24:32 ]
すいません、質問をさせてください。
VBAではなく普通の関数なんですが、
3人の1ヶ月の勤務表があるとします。
   A   B   C   D   E
1     Yさん Mさん Aさん 
2  1日   0   2   休 
3  2日   0   休   休 
:  :
31 30日   休   0   1 
とした時、(勤務表の数字は出勤時間を意味しており、0が朝、1が昼、2が夕方から出勤)
E列にその日の出勤が1人の場合のみ名前を出力するようにしたい場合、
現在は=IF(COUNT(B2:D2)=1,INDEX($B$1:$D$1,1,MATCH(0,B2:D2,0)),"")
と入力しておりますが、
これを一つの関数で行うことはできるのでしょうか?
VLookupの場合テーブルでないとエラーがでるので、
あれば教えていただけないでしょうか。

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

465 名前:464 mailto:sage [2007/07/26(木) 08:31:02 ]
追記です。
出勤する人が1人の場合は、
必ず勤務は朝からになります。(勤務表には0が入ります。)


466 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:16:14 ]
>>465
>464では何故いけないの?
つーか、「1や2が存在しない」ことと「0の人の名前を得る」ことの
両方を同時に満足するような関数なんてあるわけないじゃん。



467 名前:デフォルトの名無しさん [2007/07/27(金) 01:13:41 ]
VBAはいつまで存続するんでしょ

468 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 01:39:11 ]
>>467
キミが痴呆になるまで

469 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 10:08:25 ]
エクセルで、
テキストファイルの印刷
を実行する方法を
教えてくれませんか?
pdfと同じようにシェルでやろうとしたらダメでしたorz

470 名前:デフォルトの名無しさん [2007/07/28(土) 19:38:44 ]
Private Sub CommandButton1_Click()
For i = 1 To 48
If Cells(1, 1) = Cells(i, 4) Then Cells(1, 2) = Cells(i, 5)
If Cells(3, 1) = Cells(i, 4) Then Cells(3, 2) = Cells(i, 5)
If Cells(5, 1) = Cells(i, 4) Then Cells(5, 2) = Cells(i, 5)
If Cells(7, 1) = Cells(i, 4) Then Cells(7, 2) = Cells(i, 5)
If Cells(9, 1) = Cells(i, 4) Then Cells(9, 2) = Cells(i, 5)
If Cells(11, 1) = Cells(i, 4) Then Cells(11, 2) = Cells(i, 5)
If Cells(13, 1) = Cells(i, 4) Then Cells(13, 2) = Cells(i, 5)
If Cells(15, 1) = Cells(i, 4) Then Cells(15, 2) = Cells(i, 5)
If Cells(17, 1) = Cells(i, 4) Then Cells(17, 2) = Cells(i, 5)
If Cells(19, 1) = Cells(i, 4) Then Cells(19, 2) = Cells(i, 5)
If Cells(21, 1) = Cells(i, 4) Then Cells(21, 2) = Cells(i, 5)
If Cells(23, 1) = Cells(i, 4) Then Cells(23, 2) = Cells(i, 5)

Next
End Sub


セルの値があらかじめ用意しているリストのと一致すると、
特定の文字を入力しようと こういうのを作りました
で、うまくいったのですが、
これだとそれぞれ1つのセルにしか記入できません。
たとえば1列目で、Cells(1, 3)にも何か書きたい場合はどうしたらよいでしょうか?
質問の意味が分かりづらかったらスマソ

471 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 19:48:59 ]
For i=1 To 48
For m=1 To 12
j=2*m-1
If Cells(j,1)=Cells(i,4) Then Cells(j,2)=Cells(i,5):Cells(j,3)="何か"
Next
Next

472 名前:デフォルトの名無しさん [2007/07/28(土) 19:53:23 ]
>>471
速攻レスありがとうございます。
今仕事中でこっそり送信してるんで、時間ができたらやってみたいと思います。


473 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 20:18:42 ]
記法とかオブジェクトの基本的な質問がちょくちょく出てくるのを見るに
VBAからプログラミングに入った人はある程度理解出来てきたなと思う頃
初心に返ってヘルプを一通り眺めてみるのが良さそうだね。

ランゲージリファレンスのメソッド・キーワードあたりの意味が一通りわかった時とか、
ウォッチウィンドウの使い方を理解した時涙出そうになったのを思い出した。

チラ裏スマソ。

474 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 20:25:55 ]
>>471

For m = 1 To 12
j = 2 * m - 1



For j = 1 To 23 Step 2


475 名前:デフォルトの名無しさん [2007/07/28(土) 21:10:24 ]
470ですが
>>471 >>474氏 サンクス
今やって見たら解決しました。
:(コロン)を使うというのを初めて知りました。

特に仕事でVBAが必要というわけではないので、1年に一回くらいしか使わないのですが
たまに使うと初歩的なことも忘れてしまいます。

ちなみに競馬のデータ分析に使いましたw
1万レース近くあるのでVBAというかマクロというか分からんけど役に立ちます。

476 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 00:26:53 ]
>>473
割と共感した



477 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 23:01:37 0]
0〜11までの数字をランダムに、かつかぶらないように代入したいんですが
以下のコードだと数字が代入されない場合があるんです。何が原因なんでしょう・・
__________________
n1k = Int(Rnd * 12)
Do
n2 = Int(Rnd * 12)
Select Case n2
Case n1k
Case Else
n2k = n2
End Select
Loop Until n2k = n2
Do
n3 = Int(Rnd * 12)
Select Case n3
Case n1k
Case n2k
Case Else
n3k = n3
End Select
Loop Until n3k = n3

478 名前:デフォルトの名無しさん [2007/07/29(日) 23:09:29 0]
書ききれないので・・実際はn8kまであります。

479 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 23:29:12 0]
Empty = 0がTrueになるから。
その冗長的なコーディングにはやむを得ない事情があるの?

あと抜粋でもせめて宣言部は書こうよ。

480 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 23:37:30 0]
n*kが数値型変数やVariant型変数の場合
Int(Rnd * 12)の結果が0ならCase Elseでの代入を行わなくても「n*k = n*」がTrueになるからでは?

そういうのは配列に順に数値を代入してからランダムソートするといいよ
というか、そうするのが普通だろ

481 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 23:51:51 0]
{0,1,2,3,4,5,6,7,8,9,10,11}
{0,1,2,3,4,5,7,8,9,10,11}
{0,2,3,4,5,7,8,9,10,11}
{0,2,3,4,5,7,8,9,11}
こういうイメージで配列を操作せよ

482 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 23:51:52 0]
>>480

>>477に便乗で悪いんだけど、

0〜11までの数字をランダムに、かつかぶらないように代入したい

て時に俺は

Dim RndNum As Long
Dim NumCnt As Integer
'抜き出す数字の個数
NumCnt = 3
Set Dic = CreateObject("Scripting.Dictionary")
RndNum = Int(Rnd * 12)
Dic.Add RndNum, RndNum

Do While Dic.Count < NumCnt
RndNum = Int(Rnd * 12)
If Not Dic.Exists(RndNum) Then
Dic.Add RndNum, RndNum
End If
Loop

みたいなやりかたするんだけどダメ?

483 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 00:40:48 ]
ダメではないけどDictionaryなんて使う必要ない

484 名前:482 [2007/07/30(月) 01:43:37 ]
>>483
そか。
ちとランダムソートについて調べてみるよ

レスさんくす


485 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 02:31:58 ]
全然詳しくないので質問させてください。
いつも仕事中にWebばかり見てる派遣クンが
「VBAがプログラムどおりに動かない原因を調べるのは僕の仕事ではありません。」
と言っています。
彼のVBAプログラムが動かないのを調べるのは誰の仕事でしょうか?


486 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 02:39:18 ]
プログラムが失敗作と確定してるのだったら
そういうやつは辞めてもらえ



487 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 03:17:02 ]
>>485
契約内容に因る
派遣ではなく業務請負なら間違いなくそれも彼の仕事のうちだけどね

一般的にはその派遣クンが悪いように見る人が多いかも知れないけど
契約内容によっては正しいことを言ってるかも知れない
それとこの質問において「Webばかり見てる」なんて情報は全く持って不要
彼の印象をなるべく悪くしようとしているようで浅ましい限りだ

488 名前:デフォルトの名無しさん [2007/07/30(月) 10:34:02 ]
vba おすすめ参考書は?


489 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 19:54:34 ]
参考書とは言えないかもしれんが 「Excel VBA 実用サンプルコレクション」
異常にオブジェクト偏重なサンプル集だけどこの考え方は持っておくべきだと思う。
完全な入門ならちょっと敷居が高すぎるだろうけどね。

>>485って日本語の問題?動く物を作れで終了なんじゃw

490 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 19:59:21 ]
セル範囲を画像化して保存する方法はありますでしょうか?

491 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 20:29:53 ]
あるよ

492 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 22:57:49 ]
素人な聞き方でスマソ
たとえば、
セルD1に「=A1&B1&C1」と入力したら「あいう」と表示されるとします。
(A1, B1, C1 にそれぞれ、あ、い、う が入っている)
セルD1 をセルD2に、paste spacial → values(*英語エクセルです)で
コピペしたら、セルD2には「あいう」というテキストが入ります。
このpaste spacial → values の作業を省略できるような関数があったら教えてください。
例えば、A1の値を「わ」に変えるだけで、自動的に 「わいう」というテキストの入ったセルを
ゲットできるようにしたいのです。

493 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:07:07 ]
質問させてください。

UserForm上にComboBoxを配置して
Initializeで初期値とRowsourseによってリストを与えるようにしています。

ComboBoxのリストを開くと最初は一番上のリストの値から順に表示され、
一度リストから値を選択してComboBoxに入れ、
再度リストを開くとその値があらかじめ選択されており、
その値の前後が表示されるようになってます。
( 1 〜12月がリストにあり、5月を選び再度リストを開くと 5月が選択された状態で
リストをスクロールせずとも 3〜 7月の値が選択可能な範囲にある
 ような状態です。)

最初からComboBoxの初期値の付近のリストを表示させるようにしたいのですが、
方法はありますでしょうか?

説明が不十分で分かりにくいかと思いますが、宜しくお願いします。


494 名前:492 mailto:sage [2007/07/30(月) 23:19:05 ]
自己解決しそうです。
PASTE.SPECIAL 関数っていうのがあるみたいですね。
でも手元にある 2003 のエクセルにはないみたいですが・・・
調べてみます。

495 名前:492 mailto:sage [2007/07/30(月) 23:27:31 ]
やっぱり分からなかった。
たぶんマクロでやるんですかね。素人レベルには難しいことならば諦めます。

496 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:28:20 ]
Private Sub UserForm_Initialize()
ComboBox1.Value = "5月"
End Sub




497 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:30:30 ]
>>496
ただ単にValueで値を持たせてもできないのですが・・

498 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:31:24 ]
>>492
d2に=d1じゃだめなん?

499 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:34:48 ]
>>497
五月になってない?

500 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:43:09 ]
>>499
正確には1〜12の値のみで初期値に5を入れて
ComboBoxの値は5になっている状態でリストを見ても
1(リストの一番上の値)から5くらいまでが表示された状態になってます。

要は値は入っていてもリスト上は何も選択されていない状態です

501 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:45:30 ]
>>500
それは値は入っていても値は入っていない状態だからお手上げだな

502 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 23:55:44 ]
>>501
お手上げですか

なにか手はないものでしょうか・・

503 名前:デフォルトの名無しさん mailto:sage [2007/07/31(火) 00:03:14 ]
>>498
はい。
家計簿を作ってるんですが、
1〜12月までの費目別合計の推移を DSUM 関数で出しています。
=DSUM('1'!A:H,'1'!F1,分類!A1:A2) ←1月
=DSUM('2'!A:H,'2'!F1,分類!A1:A2) ←2月
=DSUM('3'!A:H,'3'!F1,分類!A1:A2) ←3月
(以下12月までつづく)

>>492 の例に当てはめると、セルD1に
=DSUM('1'!A:H,'1'!F1,分類!A1:A2)
と表示されています。
この数式を使えるようにするために、paste spacial → values の作業をしています。
「A1:A2」の部分だけを何度も変更できるように、
セルD1は複数のセルを&でつないでおり、「A1:A2」の位置には特定のセルを指定し、
そのセルに好きなセル範囲を書くだけでいいようにしています。

504 名前:デフォルトの名無しさん mailto:sage [2007/07/31(火) 00:16:55 ]
>>502

Private Sub UserForm_Activate()
Me.ComboBox1.DropDown
Me.ComboBox1.Value = 5
End Sub

こうゆうこと?

505 名前:503 mailto:sage [2007/07/31(火) 00:51:56 ]
当初考えていたやり方じゃないけど解決しました。
有難う御座いました。

506 名前:デフォルトの名無しさん [2007/08/01(水) 13:38:16 ]
Excelからメールを送ろうとCDOで組んだのですが宛先があっていれば普通に送れるのですが、アドレスが間違っていて存在しないアドレスに送っていてもエラーが帰ってきません。

このエラーを得る方法はありますか?



507 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 18:43:08 ]
あります
でもExcelの話じゃないので、ここでは聞かないでね

508 名前:デフォルトの名無しさん [2007/08/01(水) 19:06:24 ]
CSVをADOの「Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=〜」で扱うのは
office2000以上だと標準で利用できますか?
参照設定の設定も不要でいいんでしょうか?

509 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 19:07:12 ]
当然参照設定は必要

510 名前:デフォルトの名無しさん [2007/08/01(水) 19:15:24 ]
>>509
マジ?なんも設定しなくても使えたんだけど・・・
ちなみに何を設定すればいいんですか?

511 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 19:18:37 ]
もしかしてCreateObjectで参照してる?

512 名前:デフォルトの名無しさん [2007/08/01(水) 19:28:25 ]
Private Sub CommandButton1_Click()
Set rs = CreateObject("ADODB.Recordset")
Con = ""
Con = Con & "Driver={Microsoft Text Driver (*.txt; *.csv)};"
Con = Con & "DBQ=C:\Documents and Settings\Administrator\デスクトップ\新しいフォルダ;"

strSQL = "select * from test.csv"
rs.Open strSQL, Con, 0 '0=adOpenForwardOnly

cols = rs.Fields.Count
Do Until rs.EOF
Line = ""
For i = 0 To cols - 1
Line = Line & rs(i) & vbTab
Next
Debug.Print Line
rs.MoveNext
Loop

End Sub

513 名前:デフォルトの名無しさん [2007/08/01(水) 19:29:32 ]
こんなん書いて 今家でも試したけど出来た

CreateObjectだね

CreateObjectだと参照設定しなくても出来るということでおk?

514 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 20:05:43 ]
>>506
www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_800_080.html
ググったら見つけました


515 名前:デフォルトの名無しさん [2007/08/01(水) 22:14:09 ]
エクセルを開こうとするといきなりインストールしだしてエラー表示がでました。
プロパティを開いてプログラムを見ると不明なアプリケーションとなっております。
これは何故でしょう?
またこれを解決する方法はどうすればいいのでしょうか?


516 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 22:17:30 ]
>>513
そうだよ。それが遅延バインディング。
欠点として、参照設定してきちんと型を指定して使う早期バインディングより
速度が遅いと、確かヘルプに書かれているはず。



517 名前:デフォルトの名無しさん [2007/08/01(水) 22:18:02 ]
初心者です。
if,do,for等の分岐式や繰り返しコードを使うと必ずバグが出ます。
バグが出ないように皆さん何か心がけている事ってありますか?

518 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 22:21:59 ]
参照設定しないと遅いのもあるけど、コーディングしにくくない?

519 名前:デフォルトの名無しさん [2007/08/01(水) 22:55:03 ]
参照設定ってexcelファイルにするの?
excel環境にするの?

520 名前:デフォルトの名無しさん mailto:sage [2007/08/01(水) 23:05:13 ]
ブック単位だな。
ちなみに、普通のVBだとプロジェクト単位。

521 名前:デフォルトの名無しさん [2007/08/01(水) 23:47:31 ]
>>515
VBA関係ねえ

522 名前:デフォルトの名無しさん [2007/08/01(水) 23:53:15 ]
>>520
d


523 名前:デフォルトの名無しさん [2007/08/02(木) 07:40:47 ]
ADOで
csvテーブル(Microsoft Text Driver接続)と
Excelシートテーブル(Microsoft Excel Drive?接続)の
SQLでの連結ってできる?

524 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 18:21:00 ]
VBAでListViewとかTreeViewを組み込んで OLEDragDropとか使うのは、
VBがある環境じゃないとライセンス違反とか聞いたんだけど、ほんと?
なんかMSのページ見に行ってもどこに情報があるのか良くわからん。。

使えるのに使っちゃダメとかなんだったらひどい話だよなあ。

525 名前:デフォルトの名無しさん [2007/08/02(木) 18:24:58 ]
vbaでSQLite使う方法ある?

526 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 18:28:46 ]
あるよ



527 名前:デフォルトの名無しさん [2007/08/02(木) 18:33:07 ]
どうやるのか教えて

528 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 21:21:54 ]
>>524
> ライセンス違反とか聞いたんだけど、ほんと?
うん、ライセンス違反だよ

ListViewとかTreeViewはVB6ランタイムを入れるとVBAからも使えるようになるが、本来VB6ランタイムというのは有料ソフトの付属品
VB6で作ったソフトを動かす為に必要なので、特定条件下で無料再配布が許可されているが、当然、使用はライセンスに縛られた範囲になる

で、使用して良い範囲が、VB6を持ってない人(VB6ランタイムを借りてる人)ではVB6で作られたソフトからの利用のみで
VB6を持ってる人(VB6ランタイムを購入した人)は自分の環境内で好きなように使って良くて
VB6Proなどを持ってる人(VB6ランタイムとその再配布権を購入した人)は自環境内で好きなように使って良いのに加えて
自作ソフトに同梱して配布することも出来る

無料で配布されているとは言え、VB6を持ってない人には有料ソフトの一部を条件付きで貸してるだけということをお忘れなく

> 使えるのに使っちゃダメとかなんだったらひどい話だよなあ。
世の中、出来るけどやっちゃいけないことで溢れかえっているけど、こんな事にも気付いてないほどお子ちゃまなの?
おそらくピッキングが出来れば君の家にある君が所有権を持つ物品類を盗むことも「出来ること」だが
この「出来ること」をやっちゃダメだと法的に定めるのはひどい話なのかな?
君の所有物に対して、所有権において他者の使用を制止・制限出来るのと同じで
MSの著作物に対しても、著作権において他者の使用を制止・制限してるだけのことなんだけど

529 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 21:47:51 ]
>>528
> 特定条件下で無料再配布が許可されているが、
おー、そういうからくりなのか。ぜんぜん知らなかった。
勉強になるなあ。ありがとう。

> 世の中、出来るけどやっちゃいけないことで溢れかえっているけど、
> こんな事にも気付いてないほどお子ちゃまなの?
お子ちゃまレベルなのは認めるよ。
趣味でスクリプト組んでいるんであって、
プロで開発やってるわけじゃないもん。

もうちょっと「だめであること」がわかりやすくなっていても
いいんじゃないか?と思ったよ。だめならだめでさ。

530 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 21:56:24 ]
それを言うなら鍵あいてた家のトイレでウンコしていいかとかそんな所だろ。
どっちもどっちだし窃盗みたいにものすごく悪いって程ではないけど、一応ダメ。
見つかって話がこじれたり目に余るような有様だと裁判沙汰にもなるわなw

531 名前:デフォルトの名無しさん mailto:sage [2007/08/02(木) 23:37:16 ]
>>529
技術や知識レベルとかプロ意識の問題じゃなかろう
約束やルールを守れないのは子どもだってこと

ただまあ524がそこまで言われるようなことかと言うと
「そういうもんなんだから諦めな」で済むような気もする


532 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 00:20:16 ]
そんなことよりvbaからSQLite使う方法教えろ

533 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 04:43:19 ]
ググれカス!

534 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 21:25:19 ]
vba sqlite odbc でぐぐって判らんかったら諦めれ

535 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 21:26:25 ]
ブレークポイントでプログラム中断した時、変数にマウスポインタあてると
内容が表示されるのが表示されなくなりました
設定とかいじってないのに何ででしょう?

536 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 22:14:43 ]
VBAを記述中にカーソルが勝手に戻ったり、コメントを記入中に勝手に変換確定されるのですが
どうすれば回避する事が出来るのでしょうか?

例えば

Sub | ←このような時に Sub| ←このようにカーソルが戻ってしまうんです。
わーくしー ←このように入力中に勝手に確定されるのです。

よろしくお願いします。



537 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 22:29:04 ]
スペースが全角だから自動で半角になってるんじゃないか

538 名前:106 mailto:sage [2007/08/04(土) 07:49:36 ]
'Sub |

539 名前:デフォルトの名無しさん mailto:age [2007/08/04(土) 10:42:33 ]

助けてください。2列目以降をソートしたいのですが、

Range("A1").Sort _
Key1:=Columns("B") _
, Order1:=xlAscending _
, Header:=xlGuess _
, Orientation:=xlTopToBottom

だと、
実行時エラー'1004'
RangeクラスのAutoFilterメゾットが失敗しました。


Range("A1:L100").Sort _
Key1:=Columns("B") _
, Order1:=xlAscending _
, Header:=xlGuess _
, Orientation:=xlTopToBottom

だと、
エラーはでませんが、まったくソートがされません。
F8を叩くと、セルはA1を指しています。
同じファイルをマクロで実行したソースを貼っても駄目でした…。
よろしくお願いします。

540 名前:539 mailto:age [2007/08/04(土) 10:45:32 ]
↑すいません。

○RangeクラスのSortメゾットが失敗しました。
×RangeクラスのAutoFilterメゾットが失敗しました。

です。

541 名前:デフォルトの名無しさん [2007/08/04(土) 15:47:25 ]
決められた範囲内(セル内)のデータをcsvファイル形式でセーブしたいのですが…
どんなプログラムになるでしょうか?

542 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 16:10:48 ]
>>542
マクロ記録でSaveAs...してみれば判ると思う。

543 名前:542 mailto:sage [2007/08/04(土) 16:11:49 ]
>542は>>541ね。

544 名前:536 mailto:sage [2007/08/04(土) 19:19:49 ]
最初にOption Explicitを入れたので、原因はそれっぽいのかな。
まだ、検証してませんが

545 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 19:51:05 ]
>Option Explicitを入れたので、原因はそれっぽいのかな。

Option Explicitは常に入れているが、そんな話聞いた事が無い。

546 名前:デフォルトの名無しさん [2007/08/04(土) 23:56:25 ]
Sheet1
□ りんご
□ みかん
□ いちご
□ ぶどう

Sheet2
┌─────┐
│りんご    │
│みかん   │
└─────┘

図のようにシート1にあらかじめ入力されているデータを選択し
シート2にあらかじめ作成しておいた表の特定のセルに自動転記され
表が完成する。 という動作を行いいたいのですが
まずシート1でチェックボックスで選ばれた項目だけを
表に反映させるというのがわからないです。。




547 名前:デフォルトの名無しさん [2007/08/05(日) 00:43:42 ]

くそ天皇 くそ天皇 くそ天皇 くそ天皇

いい加減死ねっつってんだろ屑ニートくそ天皇が

相変わらず病的な粘着っぷりだな屑ニートくそ天皇が

毎日毎日毎日粘着出来て良いでちゅねくそ天皇

くそ天皇さっさと死にやがれゴミが

東京に在住している精神病珍米糞ニートくそ天皇君の末路

さっさと精神病院逝くか首吊って逝くか選べや糞天皇が

早く死ねよ糞ニート天皇が

粘着精神病屑ニート天皇君は自らニートくそ天皇であると公言しました
さっさと死ねやくそ天皇が

早く死ねっつってんだろ屑ニートくそ天皇が

お前みたいなゴミクズ天皇は息してるだけで空気が汚れるからさっさと死ねや

とっと死に晒せや糞ニート天皇が

548 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 01:09:41 ]
>>546
Sheet1.CheckBox1でプロパティ値にアクセスできるし
changeイベントもあるからお好きなように

549 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 16:42:45 ]
タスクみたいなタイマーで2時間に1回プログラムを実行させるにはどーすればいいの?

550 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 20:56:56 ]
タスクを使えばいいんじゃね?

551 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 03:44:01 ]
OSはVistaです。

エクセルで完成させた表を印刷しようとするとエラーになります。
通常のインターネットなどのページを印刷するのは可能なのですがエクセル・ワードだけはエラーがでてしまいます。
パソコンでプリンターの状態を見たら「アイドル」になったままで何をしても変わりません。

だれか助けてください。

552 名前:551 mailto:sage [2007/08/06(月) 03:45:26 ]
スマソ。
板違いだった。
総合相談所スレにいってきます。

553 名前:デフォルトの名無しさん [2007/08/06(月) 15:13:05 ]
お世話になります。

accessからodbcを利用してプロシージャを実行させようとしているのですがエラーになって実行できません。

--ソースの一部----------------------------------
 Dim tmp_qd As QueryDef

 SQL = "exec プロシージャ_hoge"

 tmp_qd.SQL = SQL

 Set tmp_rs = tmp_qd.OpenRecordset()
------------------------------------
vbは良く分からない(初めて3日くらいです)のでこれでソースが足りるか分かりませんが、
上記の「tmp_qd.OpenRecordset()」でエラーが発生しています。
内容は
 「 ODBC--呼び出しは失敗しました。 」
とダイアログに表示されます。

エラーの原因がなんだかわかりません。
お手数ですが、お願いいたします。


554 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 15:28:04 ]
動いたら奇跡

555 名前:デフォルトの名無しさん [2007/08/06(月) 15:53:57 ]
>>554
他のコードです。
Dim db As Database
Dim qd As QueryDef
Dim rs As Recordset

Set db = CurrentDb()
qd.Connect = glcnst_ODBCConnect
qd.ReturnsRecords = True
qd.ODBCTimeout = 0

SQL = "exec pro_hoge"

qd.SQL = SQL

Set rs = qd.OpenRecordset()

何か文法等間違っている箇所があるのでしょうか?
お願いします。



556 名前:デフォルトの名無しさん mailto:sage [2007/08/06(月) 17:39:57 ]
currentdbはaccessでしか使えないし
sqlが何かわかってないし
どこが間違ってるかとかいうよりも
ちょっとずつしっかり勉強したほうがいいよ



557 名前:デフォルトの名無しさん [2007/08/06(月) 18:58:04 ]
>>556
了解しました

558 名前:デフォルトの名無しさん [2007/08/06(月) 19:44:23 ]
初めてカキコします。
スキルもないのに仕事を押し付けられた入社1年目の者です。
日報なのですが、日付を入力したら、その日の売上、仕入を表示できるようなプログラムはあるのでしょうか?
ご教授お願い致します






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

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

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