[表示 : 全て 最新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/


807 名前:デフォルトの名無しさん [2012/03/24(土) 16:38:43.39 ]
A1とかセルの座量をべた書きするんじゃねーよ
セルに名前を付けて名前経由で座標を指定しろよ

ソース解析&改造しててやりにくくてしかたない

808 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 16:49:06.55 ]
複数のCSVファイルを1つにしたくて
調べたら
以下のサイトが参考になったので
ttp://ziddy.japan.zdnet.com/qa3168255.html?order=DESC&by=datetime



Sub CSV結合()
Const CRFILE As String = "C:\My Documents\test2"
Dim obj As Object
Dim arg As String

Set obj = CreateObject("Shell.Application") _
.BrowseForFolder(0, "SelectFolder", 0)
If obj Is Nothing Then Exit Sub
arg = obj.self.Path & "\*.csv "
Set obj = Nothing
Call Shell(Environ("ComSpec") & " /c copy /b " & arg & CRFILE)

End Sub

とやっているのですがうまくいきません。
フォルダ選択の画面はでてくるのですが
C:\My Documents\test2
に結合されたCSVファイルができるはずですが、できなくて。

ソース間違ってますか?
エクセル2007です。

809 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:01:15.46 ]
書き出すファイル指定が間違ってるかと思い
Const CRFILE As String = "C:\test2"

Cドライブ直下にtest2フォルダ作ってみてもだめでした

810 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:07:43.90 ]
Shell関数に渡しているコマンドライン文字列を確認したら?
とりあえず、空白を含むパスはダブルクォートで囲まないと駄目だ。

811 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:15:53.57 ]
>>808
Const CRFILE As String = "C:\My Documents\test2.csv"

で出来たけど?

812 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:20:05.20 ]
>>808
>>2

813 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:37:21.02 ]
>>807
こめんなさい。心当たりが沢山ありすぎてもう…

814 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:41:43.68 ]
>>810
コマンドライン文字列とはなんですか?

他にCSVファイルを2個作ってみたけどだめでした。


>>811
拡張子つけたけどだめでした。


>>812
XPでエクセル2007です


ソースをステップ実行させても
全部の行を実行してるのに
なんだろうこれは・・・

815 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:50:40.99 ]
Const CRFILE As String = """C:\My Documents\test2.csv"""



816 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 17:54:23.10 ]
> XPでエクセル2007です

そう来るかw


817 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 18:38:25.29 ]
>>814
>>2

818 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 19:20:45.41 ]
>>775
これで指定したレンジ範囲の数値を、小さい順に並べた場合の各々の差が、x以上であるとかx以下であるといった判定をするにはどう書けばよいですか!

819 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 20:30:24.96 ]
>>818
IsNumeric関数とIfステートメントを使う
詳細はヘルプを読めばわかる

820 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 22:05:47.67 ]
isnumericじゃできなくね?

821 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 22:08:14.94 ]
数値かどうかの判定に必要だと思ったんだけど、不必要だと思ったなら使わなくても何ら問題ない
強制力なんかないからね

822 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 22:55:40.15 ]
if a1>a2+x>a3+x thenが上手く動かないのだが、なぜか?

823 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 22:59:30.43 ]
>>822
if a1>a2+x and a2+x>a3+x then

824 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:02:42.68 ]
これがa3までじゃなくa100まである場合、どうすればいい?

825 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:04:33.81 ]
誤り if a1>a2+x>a3+x then
訂正 if a1>a2+x>a3+2x then



826 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:07:17.88 ]
そうか全組み合わせの差の絶対値の最小値がx以上ならいいわけか

しかしx以下の場合を求めたいときはどうすればいい?

827 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:08:16.93 ]
何だVBA力のおっさんか

828 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:13:47.11 ]
>>824
VBAを使うしかないだろうな

829 名前:デフォルトの名無しさん mailto:sage [2012/03/24(土) 23:23:17.89 ]
>>824
アンダースコアを使えばステートメントを複数行に分けて記述することができる
例えばこんな感じ
If 条件式1 And _
条件式2 And _
条件式3 And _
条件式4 And _

既にスレチなので>>2をよく読んでくれ

830 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 02:53:38.96 ]
例えば処理したい「実行1」というプロシージャがありあまして。

call 実行1
で普通に処理されるのですが。

Dim moji As string

moji = "実行1"

call moji

は当然ですが実行されません。ですが、何かプロシージャそのものを変数化させて
状況に応じて呼び出せるようにする方法があるでしょうか?

ユーザーフォームのリストボックスに何十種類ものプロシージャがあるのですが、それらを
効率的に場合わけして処理するのに、それが出来ると便利なのですが。
方法はないのでしょうか?

831 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 03:35:34.73 ]
>>830
Application.Run ThisWorkbook.Name & "!" & moji

普通は Call ほにゃらら(moji) ってやって、ほにゃららの中でmojiによって分岐するようなプログラムを書くもんだけど

832 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 03:37:32.62 ]
ifとかselectでそれらを場分けしてcallする処理を1個用意すりゃ良いじゃん
つか普通そうする
プログラミングの手法とかそういう話だから後はそういうスレで聞いてくれ

833 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 03:38:56.85 ]
あ、リロードしないのが自分の悪いクセだな…

834 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 06:28:18.30 ]
>>831
ありがとうございます。

>>832
実はそのように、select で、分岐していたんですが、数が多くなりすぎて。
ただ、selectの分岐がいくら多くなっても、速度とかに影響するという
わけでもないので、良いといえば、良いのですが、スマートにできないかと
気になってしまいまして。

835 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 12:59:29.22 ]
for i=1 to n
if a(i-1) - a(i) <= x then y= false
next I




836 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 15:22:52.17 ]
a列とb列の相関を調べたい

837 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 15:31:17.78 ]
VBA使う必要ないけど

838 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 17:04:00.73 ]
複数のCSVファイルをひとつのXLSファイルへまとめるにはどのようにしたら効率がよいですか?
20120201.csv
20120202.csv
・・・
20120228.csv
というファイルを201202.xlsファイルにまとめたいと考えています。
(シート名を01,02,・・・,28にして、1bookに28シートが出来上がるイメージ)

839 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 18:13:25.03 ]
>>838
ご自身のコーディング速度と手作業での速度を比較してみればどちらが効率がよいか一目瞭然です
1回限りの作業であれば手作業でやるのが一番効率がよいでしょう
ExcelVBAに関係がない話題なのでこのへんで終了

840 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 19:06:52.20 ]
配布物にExcelを利用したいのですが
配布物の中の別のファイルの情報を取得する場合
ttp://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_110_140.html
で相対パスだと危険があるとあったのですが
ThisWorkbook.Path & "\..\date\ファイル名"
のようなやり方だと階層をまたいでも中をいじられない限り
どんな環境の人が使っても問題ないと思っていいのでしょうか

それと、相対パスで一つ上の階層に行くやり方で
Dim mPath As String
mPath = ThisWorkbook.Path
i = Len(mPath) - Len(Replace(mPath, "\", ""))
If i > 1 Then
mPath = Mid(mPath, 1, InStrRev(mPath, "\") - 1)
End If

というやり方が紹介されていたのですが
これは..に対して上に階層があるのか調べる機能が付いただけ
という認識でいいのでしょうか

841 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 19:18:37.85 ]
>>840
お前の認識間違えてるぞ
アホ
ちゃんと読め

842 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 19:18:46.91 ]
>>840
すべてにおいて見当違い
手始めに「相対パス」がなんなのか理解してきた方がいい

843 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 20:40:54.08 ]
>>839
一回限りの作業ではなく、毎月発生する作業です。

現在は

新しいブックに開く→シートの移動

を繰り返すコードにしてるのですが、
見るからに効率が悪くなっています。

844 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 20:51:07.07 ]
>>842
相対パスって基準から見た位置ですよね
URLのは基準を指定しないとカレントフォルダからになるから危なくて
ThisWorkbook.Pathで基準をブックのある位置を指定すれば問題ないのかなと思ったんですが

845 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 20:57:55.20 ]
>>843
検索すれば、参考になるコードいくらでも出てくるだろ。
Dir 関数使えばいいんじゃない。



846 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 21:37:10.43 ]
>>843
見るからに効率が悪いことに気づいてるんだったら改善すればいい

847 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 21:37:33.36 ]
>>844
「危ない」とか「問題」ってのは具体的にどういうことなの?
具体的に説明してくれないと誰もわからないよ

848 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 21:55:49.31 ]
>>843
QueryTables.Add使え

849 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:44:15.07 ]
>>847
「絶対的基準に基づいてないから危ない」とか言い出すぞw

850 名前:デフォルトの名無しさん mailto:sage [2012/03/25(日) 22:54:44.01 ]
>>844
もう一回お前のリンク先読み直してから来いよ
音読な

851 名前:デフォルトの名無しさん mailto:sage [2012/03/26(月) 01:01:30.47 ]
>>838,840
Excelどうこうよりも、まず日本語の読み書きを勉強した方がいいと思う
社会人になってから苦労するよ?

852 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 16:27:18.20 ]
EXCEL VBAは基本的にはオブジェクト指向言語。
だからJAVA, C++と同様にクラス間の継承もあるが、EXCELで予め定義された
既存のクラスのみでその関係があり、↓ここを見るとプログラマが定義する
マクロのクラスで、継承関係にあるものを作ることはできないみたい。
members3.jcom.home.ne.jp/daruma_kyo/aboutooa/vba_limit.html

既存のクラスの継承関係。例えば、collection WorkSheets,Chartsは、
collection Sheetsを継承している。

ActiveWorksheetでその時にカーソル(focus)を当てているものを示す、
property Selection。

その時にカーソルを何に当てているかによって、Selectionのクラスが、
Range, Shape, ChartAreaなどに変化しているみたい。

このproperty Selectionを定義しているクラスは、多分、あらゆるクラス
の継承元になっているclass "Object"でないかと思っていますが、
どうなんでしょうか。


853 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 16:48:39.95 ]
>>852
オブジェクトブラウザというものがある

854 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 17:19:20.10 ]
複数の行の挿入が面倒くさかったのでVBAを学んでみようと思ったのですが試しに作ったマクロが
Sub 行の挿入()
Dim i As Integer
i = 1
Rows("i:2").Insert Shift:=xlDown
End Sub

型が違うと出てきます
iの定義が間違ってるのかと思うのですが
LongやVariantなども試したもののだめで、整数値で型が違うといわれるのもなぜかわかりません
初歩的で申し訳ないですが教えてください


855 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 17:40:07.26 ]
>>854
“Rows”の上にカーソルを置いて[F1]キーでヘルプを開いて読め



856 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 17:58:53.56 ]
>>855
できました
ありがとうございます

857 名前:デフォルトの名無しさん mailto:sage [2012/03/27(火) 21:51:31.61 ]
>>852
>EXCEL VBAは基本的にはオブジェクト指向言語。
VBAはもともとオブジェクト指向ではない言語をオブジェクト指向に拡張した言語(の派生)
オブジェクト指向言語だと言いきるには不備が多い

>既存のクラスの継承関係
基本的に継承関係は保障されているわけではない(と思う。保障されてるならソース教えてくれ)
つまり(Setによる代入で)キャスト出来るかどうかは実行してみないと解らない

>ActiveWorksheetでその時にカーソル(focus)を当てているものを示す、property Selection。
ActiveWorksheetなんてクラス(型)はない。WorksheetにはSelectionなんてプロパティはない

>Selectionのクラスが、(略)変化しているみたい。
Selectionなんていうクラスも無いのは理解できてるのか?
(Windowクラスの)Selectionの戻り値の型について、Object型で実際はいろんな型が戻されるんだぞ

>このproperty Selectionを定義しているクラスは、
Selectionなんてクラスはないし、Selectionプロパティを実装(定義)してるクラスはどんな型だろうと関係ない
問題はSelectionプロパティ(の戻り値)の型

>あらゆるクラスの継承元になっているclass "Object"でないかと思っています
VBAにはObjectという型はあるが、Objectクラスというクラスはない(はず)
Object型にはあらゆるクラスが格納できるが、それは全てのクラスがObjectから派生してることを意味しない
なぜならVBAは純粋なオブジェクト指向言語ではないから

858 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 11:52:43.27 ]
>>857
> 基本的に継承関係は保障されているわけではない(と思う。保障されてるならソース教えてくれ)
> つまり(Setによる代入で)キャスト出来るかどうかは実行してみないと解らない

できない例は?

859 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 14:59:45.96 ]
>>>857
class, object, collection, propertyの概念の区別がきっちりできていな
いです。

>>Selectionなんてクラスはないし、Selectionプロパティを実装(定義)してるクラスはどんな型だろうと関係ない
object browserで見ると、Selectionはobject Applicationとobject Windows
のmember(property)になっているみたいです。

これのヘルプを見る。
>>Property Selection As Object 読み取り専用
>>Selection プロパティ
>>Application オブジェクトでは、アクティブウィンドウで現在選択されて
>>いるオブジェクトを返します。
>>Windows オブジェクトでは、指定されたウィンドウで現在選択されている
>>オブジェクトを返します。

>>オブジェクト指向言語だと言いきるには不備が多い
↓参考
sites.google.com/site/compositiosystemae/home/vbaworld/upper/exp3/polymorphi

VBAのclass moduleでクラスを定義するとき
クラスの構築子(constructor)に当たるもの Class_Initialize()
クラスの消滅子(destructor)に当たるもの Class_Terminate()

構築子の引数はサポートされていない。


860 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 16:13:38.21 ]
>>859
> class, object, collection, propertyの概念の区別がきっちりできていな
> いです。

できてないのはお前だけじゃないの?

861 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 16:32:30.71 ]
なんかVBAがオブジェクト指向的に駄目だ駄目だって言う奴多いけど、
適切なところでclassモジュールを使って、VBAで使える範囲の機能を
使えばいいのにっていつも思う。

とか言うと、VBAじゃ適切なところなんてない的な話になりがちな気がするが。

862 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 16:36:41.16 ]
この手の話を質問スレでしないで欲しい
自分の中で答え持っててそれを主張するだけなんだから

863 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 16:57:49.74 ]
VBAスレはここだけしかないんだから、ここでいいだろ

864 名前:862 mailto:sage [2012/03/28(水) 17:07:48.32 ]
あ、これ質問だったのか
ごめんよく読んでなかったは

865 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 17:23:26.77 ]
ガキはすっこんでろ。



866 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 23:12:36.94 ]
>861

はげどう。
継承だって工夫すればできるし、
コンストラクタの引数がないのも特別不便ではない。



867 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 23:31:02.19 ]
オブジェクト指向厨は市ね。
VBAごときの小規模アプリに
オブジェクト指向など無用だ。

868 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 23:33:47.05 ]
工夫した継承はコード量が多く、結局オブジェクト不志向(データ志向っての?)に落ちついてしまう
って事があったなーと、ふと思い出したっす。

869 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 23:45:10.16 ]
ツールバー追加のマクロを組んだのですが、ブックを閉じるときに
ツールバーを削除しようとするとエラーが出ます。
原因をご教示下さい。
コードは長くなるので分けて書き込みます。


870 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 23:48:22.21 ]
Private Sub Auto_Open()
Dim xlAPP As Application
Dim objBar As CommandBar
Dim objCont As CommandBarControl
Dim objBtn As CommandBarButton
Dim vntCaption As Variant , vntTipText As Variant , vntOnAction As Variant
Dim IX As Integer
Dim blnTRUE As Boolean
Set xlAPP = Application
vntCaption = Array("登録(&A)", "更新(&U)", "削除(&X)")
vntTipText = Array("登録を行ないます", "更新を行ないます", "削除を行ないます")
vntOnAction = Array("BTN_TOUROKU", "BTN_KOUSHIN", "BTN_SAKUJO")
Set objBar = xlAPP.CommandBars.Add(Name:=g_cnsTITLE, Position:=msoBarTop)
blnTRUE = False
For IX = 0 To 2
Set objCont = objBar.Controls.Add(Type:=msoControlButton)
objCont.BeginGroup = blnTRUE
' CommandBarButtonオブジェクトの参照を取得
Set objBtn = objCont
objBtn.Style = msoButtonCaption
objBtn.Caption = vntCaption(IX)
objBtn.TooltipText = vntTipText(IX)
objBtn.OnAction = vntOnAction(IX)
blnTRUE = True
Next IX
objBar.Visible = True
objBar.Protection = msoBarNoChangeVisible
ActiveWindow.ScrollRow = 1
Set objBtn = Nothing
Set objCont = Nothing
Set objBar = Nothing
End Sub

871 名前:デフォルトの名無しさん mailto:sage [2012/03/28(水) 23:50:44.42 ]

' 閉じる時の自動実行処理
Private Sub Auto_Close()
Dim xlAPP As Application
Dim objBar As CommandBar

Set xlAPP = Application
★Set objBar = xlAPP.CommandBars(g_cnsTITLE)
objBar.Delete
Set objBar = Nothing
End Sub

★の部分で
実行時エラー'5':
プロシージャの呼び出し、または引数が不正です。

となります。原因と対策をご教示下さい。


872 名前:デフォルトの名無しさん mailto:sage [2012/03/29(木) 00:07:11.46 ]
>>871
g_cnsTITLEに該当するツールバーがないんじゃない?

873 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 00:17:48.05 ]
>872
直接ツールバー名を指定したら無事動きました。
ありがとうございました。


874 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/03/29(木) 10:35:16.91 ]
>>868
Strategy Patternとか超便利なんですけど。

875 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/02(月) 20:03:26.77 ]
動的に作成したCommandButtonにクリックイベントを
登録するにはどうすればいいの?




876 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/02(月) 20:29:50.48 ]
Outlookで仕事で毎日送ってるメールがあるんだけど
本文で日付以外は全部一緒。

Templateで、日付もその日のが自動入力、って設定する方法はどうやりますか?
マクロでもokです。

877 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:45:11.26 ]
date | Mail -s 今日のメール who@where.co.jp

Unix使えよオマエら

878 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/02(月) 20:51:58.76 ]
>>876
OutlookのバージョンとExeclのバージョンを教えて

879 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/02(月) 21:14:12.72 ]
ともに2007です >>878

880 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 01:39:29.67 ]
>>876
EXCELまったく関係ないのはスレ違いなんだが
outlook テンプレート 日付 でググって最初のページでも見てろ

881 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 11:47:57.65 ]
どう考えてもこのスレに辿り着くより解法が載ってるサイトに辿り着く方が早いと思うんだけど
検索サイトを一体どんな風に利用しているんだろう?

882 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/03(火) 19:39:23.25 ]
>>875
WithEventsで宣言した変数に参照代入する

883 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/04(水) 17:49:54.34 ]
A3の範囲に入っている数字が読めるように
列幅を大きくするとOKで
列幅を小さくして数字が##のようにすると
Set C がNothing になってしまう、いい方法ありますか

A2 = "gg50": A3 = "gg11:gg45"
n = sh4.Range(A2)
Set C = sh4.Range(A3).Find(Val(n), LookIn:=xlValues)


884 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/04(水) 18:07:52.43 ]
>>883
検索するときに列幅を広げて
検索が終わったら列幅を元に戻す

885 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/04(水) 18:14:12.91 ]
わかりました、そーします
ありがとう




886 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 08:36:11.39 ]
だれかSQLでdecodeに当たるような関数をVBAで教えてくれ
調べてもreplaceしか出てこないんだ
内部処理で文字列を違う文字列として扱ったりしたいんだ


887 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/05(木) 10:29:49.84 ]
>>886
IIf関数かIf...Then...Else ステートメント
ちなみに標準SQLにはDECODE関数なんて無い

888 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/05(木) 11:11:06.09 ]
>>886
Choose
officetanaka.net/excel/vba/function/Choose.htm

889 名前:886 mailto:sage [2012/04/05(木) 23:16:08.15 ]
>>887
>>888
さんくす!iPhoneからだと規制されてて書き込めなかった
今日、現場の作業で活用させて頂きました

890 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 04:53:41.84 ]
オフィス田中はNGにしてほしい

891 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 07:29:19.45 ]
>>890
なんで?

892 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 07:32:09.99 ]
>>891
そんな有名なところだれでも知ってるから
すでに読んでる

893 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 08:20:34.61 ]

自分が知ってることは他人も全部知ってるべきだと思ってる池沼

894 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 10:04:50.92 ]
まぁ>>888みたいにリファレンスとして貼るならMSのサイトを貼れよとは思う

895 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 19:27:40.21 ]
>>892
何が「誰でも知っている」だ。
俺はそんなサイト知らねえぞ。
お前のためにあるスレじゃねえから
自己厨レスはやめとけ。



896 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/06(金) 19:30:55.02 ]
>>894
マイクロソフトみたいな有名なところだれでも知ってるから
すでに読んでる

897 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 00:22:42.19 ]
セル範囲を飛び越えて選択したいのですが
Range("A1,B3")をRange(cells(1,1),cells(2,3))でやることってできますか?
試しにコンマ入れてみたけどできませんでした

898 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 00:36:09.97 ]
>>897
Application.Union(Cells(1, 1), Cells(2, 3))

899 名前:897 mailto:sage [2012/04/07(土) 00:47:26.65 ]
できました
ありがとうございます

900 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 03:29:15.39 ]
オフィス田中は何ググッても出てくるよな

901 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 05:29:02.44 ]
オフィス田中は数年前に行き着いたが間違い記事があり
それを2,3年経っても放置している上に、自分と大差ないレベルらしく
読んでても新たな発見とか嬉しい驚きとか全然無いんで全く行かなくなった

902 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 07:16:36.62 ]
MSDN一日中眺めてればいいよ

903 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 07:39:34.18 ]
20年くらい前はそれでも全体見廻せたが
いまそれやると一生無駄にすると思う

904 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 08:32:51.50 ]
>>892
>>>891
>そんな有名なところだれでも知ってるから
google検索なんか利用できないじゃん。有名なところしかヒットしない仕組みなんだもの。

905 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 17:05:07.95 ]
シート2のA1:A30のデータをシート1の
B2:B12,D2:D12、F2:F12
の用に3行に分けて張り付けたいときは
FOR ....next で繰り返しするしかないのでしょうか?

何か一発で行けるようなスマートなやり方はないでしょうか?




906 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 17:31:13.82 ]
>>905
B2:B12、D2:D12、F2:F12は3行じゃなくて11行だと思うけど?

一発じゃないけどループ使いたくないならこんなのとか
With Range("A1:A30")
Dim v As Variant
v = .Offset(0)
Range("B2:B12") = v
v = .Offset(10)
Range("D2:D12") = v
v = .Offset(20)
Range("F2:F12") = v
End With

907 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 17:49:21.59 ]
>>906
>>B2:B12、D2:D12、F2:F12は3行じゃなくて11行だと思うけど?
確かに・・・
B2:K2、B4:K4、B6:K6の間違いでした。

シート2のA1:A30には不連続のデータが入っていて、
それのA1:A10をB2:K2に
A11:A20をB4:K4に
A21:A30をB6:K6にコピーしたいのです。

>906を試してみると一行に全ておなじデータが入ってしまいました。


908 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 18:01:47.39 ]
>>907
コピペしたら?

Range("A1:A10").Copy
Range("B2").PasteSpecial Transpose:=True
Range("A11:A20").Copy
Range("B4").PasteSpecial Transpose:=True
Range("A21:A30").Copy
Range("B6").PasteSpecial Transpose:=True

909 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 19:47:57.72 ]
>>908
やはりそうするのが無難ですよね。

別件なのですが、Findで検索してヒットしたせるから
10行目までの範囲を指定したい場合はどうしたら
いいですかね?
Offsetを使って色々しているのですが上手くいきません。

910 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 19:52:21.42 ]
>>909
Resizeプロパティ

911 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/07(土) 22:45:34.62 ]
>>910
サンクス


912 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/08(日) 13:54:16.86 ]
教えてください。

OS:XP EXCEL:2007
ユーザーフォームを起動させると、言語バーの輝度が落ちてしまい日本語入力ができなくなります。
F8ポチポチでは再現せず…適当なポイントで止めても再現せず…
一旦エクセル落として開き直せば復帰します。
ユーザーフォームはクラスを使ったカレンダーフォームです



913 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/08(日) 18:30:01.65 ]
Excel VBAは基本的なところ(セル・シート・ブック)は完ぺきにマスターしたのですが
苦手なのがサブルーチンをいっぱい作ってそれらを効果的に使う方法や、どうやって全体像を把握するのかや、
フォームを駆使して、それをどうやって標準モジュールと連携させるかとか、
変数についてローカル変数やグローバル変数をどう概念的に理解して使いこなすとか
そのへんでつまづいています。

基本的なところ(セル・シート・ブック)は、入門書やすこしレベルが上のものでも、本やサイトでいいのがいっぱいありますが、
「サブルーチン」「フォーム」「変数」とかについてに特化した入門向けから上級者向けの本やサイトがあれば教えてもらえますか?

914 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/08(日) 18:48:40.75 ]
個人用マクロ(PERSONAL.XLSB)を作っているのですが
[X]で閉じるときもう一回押さないと閉じないんです。
これを回避する方法ありますか?

915 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 19:02:50.68 ]
>>913
>>2



916 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 19:03:25.69 ]
>>914
>>2

917 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 19:13:04.47 ]
>>913
難しく考えすぎ。
「使いこなそう」などと考えるのがおかしい。
VBAはシートと関数で実現が難しい機能が
ある場合の補助手段。
フォームとか面倒くさい機能は使うな。
シートという立派なGUIがあるんだから。
あとルーチンも変数も全部Publicでいいから。

918 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 20:58:39.07 ]
「完ぺきにマスターした」なんて書いてる時点で釣りなんだからスルーしとけ

919 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/08(日) 22:57:28.08 ]
>913
えっと、そういうのはVB(VB6まで)の入門書を卒業するレベルならいいんだろうけど、
いまさらVB6の本はないからねぇ

>914
アドインにすれば?

920 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/08(日) 23:00:30.69 ]
>>913

VBAの基本的な文法からきちんと勉強してみれば?

日経BP社の
Microsoft Excel VBA セミナーテキスト [2010/2007/2003対応]
なんてなかなか良い内容だと思ったけど。

921 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 00:32:51.14 ]
>>912
自己解決したので報告
原因はfalseのままでメソッド終了させてたからだったみたい。最後にtrueで戻したら解決した。
お騒がせしました。

922 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 01:09:31.32 ]
Excel/VBAプログラミング入門
ttp://www.cqpub.co.jp/hanbai/books/MIF/MIFZ201204.htm

う〜ん、「第10章 USB接続によるデータ計測」にひかれて買ってみたんだけど、
「サイエンスキューブ」ってデータロガーをつかうとこんなことができますよ、って説明だけで
期待したもの(WinUSB.dllをエクセルVBAから使うには)とはちょっと違ったなぁ、残念

シリアルポート(MSComm32.ocx)の代わりに使えるかなぁと思ったんだけど

923 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 03:58:36.15 ]
質問があるのですが。
複数のエクセルファイルを開いている状態で。

ショートカットキーを使ってマクロを実行しているのですが。
アクティブじゃないエクセルファイルのマクロと競合すると言いますか、
他のも実行してしまう状況にあります。

ショートカットキーのキーを変えると作業の円滑さがなくなってしまうので
出来れば同じショートカットキーを使いながら、アクティブなエクセルに
入っているマクロのみを実行したいのですが。何か方法はあるのでしょうか?

924 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 04:18:55.01 ]
誰かわかる人いましたらよろしくお願いします。

エクセル2003なんですが、条件書式の色つきが3つまでしかできません。
10色ほどしたくて、ぐぐったらここに辿り着いて元となるVBAを見つけました。
ただ、これはシート1のA列が指定になっています。
これを指定の範囲ないにするにはどこをいじればいいのでしょうか。
例えばシート1のC1〜C10を範囲にするにはどうすればいいでしょうか・
qanda.rakuten.ne.jp/qa7116283.html

925 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 07:58:24.87 ]
>>924
あんまり綺麗なコードじゃないけど、めんどくさいから最小限の修正で

Sub W()
  Dim j As Long
  Dim ws2 As Worksheet
  Dim r As Range
  Dim c As Object
  Set ws2 = Worksheets("Sheet2")
  Set r = Range("A1:A10")  'ここに色を付けたいセル範囲を書く
  If Intersect(r, Columns(1)) Is Nothing Then Exit Sub
  Application.ScreenUpdating = False
  r.Interior.ColorIndex = xlNone
  For Each c In r
    If WorksheetFunction.CountIf(ws2.Columns(1), c) Then
      j = WorksheetFunction.Match(c, ws2.Columns(1), False)
      c.Interior.ColorIndex = ws2.Cells(j, 2).Interior.ColorIndex
    End If
  Next
  Application.ScreenUpdating = True
End Sub



926 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 08:01:03.42 ]
ちょっと訂正
1つ目のIfは削除しないと、A列にしか色が付かない
2つ目のIfもよく見たら不要だな

Sub W()
  Dim j As Long
  Dim ws2 As Worksheet
  Dim r As Range
  Dim c As Object
  Set ws2 = Worksheets("Sheet2")
  Set r = Range("A1:A10")  'ここに色を付けたいセル範囲を書く
  Application.ScreenUpdating = False
  r.Interior.ColorIndex = xlNone
  For Each c In r
    j = WorksheetFunction.Match(c, ws2.Columns(1), False)
    c.Interior.ColorIndex = ws2.Cells(j, 2).Interior.ColorIndex
  Next
  Application.ScreenUpdating = True
End Sub

927 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 08:09:08.94 ]
まだVBAを扱って日が浅く、すみませんが教えて下さい。

390行目を超えると、

実行時エラー1004
WorkseetFunctionクラスのmmultプロパティを取得出来ません。

とエラーが出てしまいますが、最終行まで計算させる方法をご教示下さい。
Dim myA As Range
Dim myB As Range
Dim myC As Range
Dim l As Long
Dim m As Long
Dim n As Long
Dim lLoopTimes
Dim i As Long
Set myA = Range("Sheet1!D3")
Set myB = Range("Sheet2!C2")
Set myC = Range("Sheet1!DN3")
l = 1
m = 111
n = 14
lLoopTimes = 1194
For i = 1 To lLoopTimes
myGetMatrix(myC, l, n).FormulaArray _
= WorksheetFunction.MMult( _
myGetMatrix(myA, l, m), _
myGetMatrix(myB, m, n))
l = l + 1
Next
End Sub

928 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 08:22:37.45 ]
>>927
Sheet1かSheet2のどこかに数値の入ってないセルがあるんじゃない?

929 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 08:29:51.78 ]
>>927
そのプログラムだと、Sheet1!D3:DJ1196とSheet2!C2:P112が計算に使われる
この範囲内に数値の入っていないセルとか結合されたセルがあるとエラーになる

930 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 08:54:42.65 ]
>928
>929

チェックしてみましたが空白は無い様です。
また試しに、ループを外し、
l = 300、l = 600とマクロを300行分ずつ書き換え、順次実行していくと問題無く最終行まで行きました。

出来れば1つのマクロで終わりにしたいのですが、
何か良い方法はありませんでしょうか・・・。

931 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 09:50:47.36 ]
フォームモジュールのところにちゃんしグローバル変数を
Public inTest As Integer
と宣言してるのに
標準モジュールではその変数を使えないのはどういうこと?

別の標準モジュールにならPublic inTest As Integerと宣言してたら使えるのに。

932 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 09:56:43.94 ]
逆に標準モジュールでPublic inTest As Integerと宣言してれば
フォームモジュールではinTestの変数は使えるんですよ。
おかしくね?

933 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 09:57:37.34 ]
さらにThisworkbookモジュールでも上記と同様のことが。
ということは標準モジュールが一番えらいの?


934 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 10:17:37.12 ]
カンマ区切りのCSVファイルの読み込みで、セルG2を先頭にして読み込むとか
する方法ってありますでしょうか?
普通に読み込んで行列を挿入しているのですが、スマートな方法があれば教えて下さい。
環境はwinxp+Excel2003です。
宜しく御願いします。

935 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 10:20:15.49 ]
個人用マクロにFunctionを書いても
普通のWorksheet関数として使おうとしても使えないんですけど。
どうやれば使えるようになりますの?

(普通にシートにFunctionを書けばそのシートではWorksheet関数として使えるけど)

ヤバくない?



936 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 10:28:09.14 ]
>>934
行列を挿入するよりカトペの方が手間は少ないのでは
「テキストファイルの読み込み」を使えば好きな場所に読み込めるけど、位置を決めるまでに何度も「次へ」ボタンを
押さなきゃいけないからあんまりスマートとは言えないような気がする
一発で処理したいならマクロ

937 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 11:16:08.23 ]
>>935
無理
そういうときはアドインにする

938 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 11:35:10.56 ]
>>973
さっきから出ている「アドイン」とは何でござるっすの?

939 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 11:45:29.76 ]
>>938
Excelのヘルプで「アドイン」で検索するか、各種検索エンジンで「Excel アドイン」で検索したらいいと思うよ

940 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 11:46:30.60 ]
>>936
あっ!ありがとうございます。

941 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 11:54:37.72 ]
>>924
ここで条件によってExit Subしてるから、C1〜C10の範囲じゃなければExit Subするようにすればいい
If Intersect(Target, Columns(1)) Is Nothing Then Exit Sub

942 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 11:56:34.73 ]
グラフとかのオブジェクトを削除した時に、マクロを走らせたいのですが
どのイベントを使えばいいのでしょうか?
どなたか教えて下さい。

943 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 12:32:54.00 ]
>>942
残念ながらありません
監視する仕組みを自作するしかありません

944 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 15:04:28.95 ]
>>931
フォームでPublic宣言したものは
フォーム.変数名
で使える。

標準モジュールのは
標準モジュール.変数名でアクセスできるが
省略できるだけ

945 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 21:46:22.98 ]
ユーザー定義変数って、入れ子にできるんだね。
かなり便利だ。



946 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 23:07:19.96 ]
>>945
詳しくお願います

947 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 23:11:11.65 ]
エンターキーが押されたらマクロが走るようにしたいのですが、
ブック全体?でキーを受け付ける方法はないでしょうか?
マクロ実行後、オペレーターが画面を確認して、エンターを押したら、
再度マクロが走るようにしたいのです。

ググってもTextboxに対してだったり、セルへの入力時の例ばかりで
目的の物とは違うので教えて下さい。

宜しく御願いします。

948 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/09(月) 23:11:16.53 ]
VBAで作ったExcelのファイルを、
Outlookのメールに添付して
しかもそのメールの差出人・件名・本文(数行以上に渡る文章)もVBAで書いて
送信ボタンを押す直前の状態までExcelのVBAで作ることは可能ですか?
Yなら、どうやりますか?

949 名前:948 [2012/04/09(月) 23:12:45.90 ]
VBAで作ったExcelのファイル = あるマクロでいろんな処理をした結果作ったExcelのブックのこと

950 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 23:22:12.11 ]
>>947
Application.OnKeyメソッド

951 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 23:24:55.96 ]
>>948
>送信ボタンを押す直前の状態までExcelのVBAで作ることは可能ですか?
可能

>Yなら、どうやりますか?
>>2

952 名前:945 mailto:sage [2012/04/09(月) 23:51:26.07 ]
>>946

たとえば、宣言部で
Private Type AAA
BBB As String
CCC As String
End Type
Private Type ZZZ
DDD As AAA
EEE As String
End Type

としてやる。
で、プロシージャ内でユーザー定義変数を宣言。
すると、あまり意識せずに多次元配列状態を作り出せる。
Dim A As ZZZ

A.EEE= "文字列"
A.DDD.BBB="入れ子になってる"
A.DDD.CCC="これも"

With A
Debug.Print .EEE
With .DDD
Debug.Print .BBB
Debug.Pring .CCC
End With
End With

この例だとしょぼいけど、似たような内容の変数が
10個も20個も出てくるときにものすごく整理しやすい。

953 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/09(月) 23:52:18.64 ]
>>950
出来ました。
ありがとうございました。

954 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/10(火) 10:47:52.39 ]
End(xlUp)は、プロパティですかメソッドですか?
トマトは、野菜ですか果物ですか?
バナナはおやつに入りますか?

955 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 10:50:11.61 ]
>>954
バナナは果物です



956 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 12:40:48.54 ]
>>954
おやつやデザートとして食べるのが果物。
おかずとして食べるのが野菜。

957 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 12:43:10.21 ]
酢豚にパイナップルを入れるのは最近聞いたが
実際に見たことは無い

958 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/10(火) 19:29:34.77 ]
>>954はウ菜、かつ、バ果者 である

959 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 00:10:58.62 ]
End()はメソッドxlUpは定数

960 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/11(水) 16:53:30.86 ]
ある特定のフォルダ(例えば、デスクトップ\Test\A01\)にあるExcelファイルだけを開くにはどうすればいいですか?
また、そのフォルダにあるExcelファイルを開かずにその中のセルにある値をいくつか取り出すことは可能ですか?

961 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 17:07:23.19 ]
>>960
> ある特定のフォルダ(例えば、デスクトップ\Test\A01\)にあるExcelファイルだけを開くにはどうすればいいですか?
Workbooks.Open filename:="c:\foo\bar.xls"
で特定のフォルダの特定のブックが開ける

> また、そのフォルダにあるExcelファイルを開かずにその中のセルにある値をいくつか取り出すことは可能ですか?
不可能

962 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 18:00:41.70 ]
>>960
「Excelファイルを開かずに」の「開く」の定義をもうちょっと明確にしないと答えられないよ

963 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/11(水) 18:21:46.56 ]
>>961
いや、そのフォルダにあるExcelファイルを全部開くという意味です。
そのときによってファイル名は毎回違う、みたいな。

964 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 18:25:47.31 ]
>>963
Dir関数使えばいいよ

965 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/11(水) 18:45:17.49 ]
>>964
そのDir関数はなんのための関数?どうやって使うの?



966 名前:960 [2012/04/11(水) 18:45:46.25 ]
そんな関数、本に載ってないからわからん

967 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 18:55:55.94 ]
>>965
お前のExcelにはヘルプが無いのか?ネットに接続できるのにgoogleにはアクセス出来んのか?

968 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/11(水) 19:03:23.94 ]
使ったことすらない。グーグルは邪道だ。

969 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 19:16:03.91 ]
こんなとこで見も知らぬ他人にきくほうがよっぽど邪道だろ

970 名前:営利利用に関するLR審議中@詳細は自治スレへ [2012/04/11(水) 19:24:04.95 ]
なんだと、このやろう

971 名前:営利利用に関するLR審議中@詳細は自治スレへ mailto:sage [2012/04/11(水) 19:52:41.87 ]
Exceは確定申告のために税額を計算するソフト
それ以外の使い方は全部邪道

972 名前:デフォルトの名無しさん mailto:sage [2012/04/11(水) 20:40:11.41 ]
いきなり別のソフトの説明されても

973 名前:デフォルトの名無しさん mailto:sage [2012/04/11(水) 21:18:22.13 ]
確定申告はそれ用のソフトがあるだろ
エクセでやってる奴ってその程度のお金も出せない貧乏人なの?

974 名前:デフォルトの名無しさん mailto:sage [2012/04/11(水) 22:11:36.36 ]
エクセルのほうが高いだろ

975 名前:デフォルトの名無しさん mailto:sage [2012/04/11(水) 22:12:54.75 ]
エクセルはそれ以外の用途で買ってて入れてる奴が多い



976 名前:デフォルトの名無しさん mailto:sage [2012/04/11(水) 22:24:07.49 ]
ExcelVBAのスキルの前に、スルースキルを身につけろ

977 名前:デフォルトの名無しさん mailto:sage [2012/04/12(木) 01:04:05.31 ]
もともと表計算ソフトが税金の計算のために発明されたってのは本当の話






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前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