952 :
951 :2009/12/26(土) 21:42:37
自己解決しましたスンマセン
>>951 コントロールキーを押しながらクリック又はドラッグ
955 :
sage :2009/12/27(日) 12:24:20
通常、グラフ作成するとセルを参照しますけど、配列変数を参照したグラフ 作成はマクロで出来ますでしょうか?
956 :
955 :2009/12/27(日) 13:19:21
追記します。 Range(cells(1,1),cells(10000,500))の範囲を3D等高線グラフにしたいん ですが、(option base 1⇒) A(10000,500)の配列変数を利用して3D等高線 グラフを作成したいと思っています。 方法があれば教えて下さい。あと、こんな事しても表示までの時間は速く ならない?ですか?
958 :
955 :2009/12/27(日) 17:50:48
そうですか。。残念ですが仕方ないですね。 セル参照で進めます。
959 :
デフォルトの名無しさん :2009/12/27(日) 19:18:15
コメントで悩んでいます。 たとえば、指定のセルにコメント表示で 山田 100個とコメントに表示はできますが ここにコメントを追加して、高木 250個というコメントを追記して 山田 100個 高木 250個 とコメントを表示したい場合はどうすればいいのでしょうか?
>>958 できるよ
aが配列だとして
ActiveChart.SeriesCollection(1).Values = a
とかやると、配列が元データになる
画面表示は大変なことになるけど・・・
>>959 素人ですが
Range("A1").Comment.Text Text:=Range("A1").Comment.Text & "高木 250個"
でどうでしょう
>>959 ' Macro1 Macro
'
Range("E7").Select
Range("E7").Comment.Text Text:="******:" & Chr(10) & "山田 100個" & Chr(10) & "高木 250個" & Chr(10) & ""
Range("E8").Select
End Sub
マクロの記録でこんなのが出来たから、必要な部分を追加すれば良いだけでは?
vbCrLf
>>959 追記だけなら
正しい使い方かどうかは知らんけど こういう方法もあったりする
Range("A1").Comment.Text Start:=9999, Overwrite:=0, Text:=Chr(10) & "高木 250個"
セルに入力された日付から 曜日を抜き出して処理をしたいのですが うまく取得できません。 ぐぐってもdateを使ってそこから曜日を取得するようなものばかりです。 あらかじめセルに1月1日(月) みたいに入力されているところから 曜日を取得したいと思っています。 Dim a As data a = ("A1") Range("A2") = Weekday(a) Range("A3") = WeekdayName(Weekday(a)) よろしくお願いします。
>>965 MsgBox Format(Range("A1").Value, "aaaa") & " or " & Format(Range("A1").Value, "aaa")
>>965 文字列として 1月1日(月) が 入力されているなら
ActiveSheet.Range("A3").Value = Left(Right(ActiveSheet.Range("A1").Value, 2), 1)
と するとか
959ですが、質問に答えてくれた方ありがとうございました。 その後、何とかできたのでよかったなぁと思っています。
ONKEY命令を「CTRL」+「C」という本来はコピーのショートカットのキー割り当てをワケあって マクロに割り当てているのですが、 この命令を同じエクセル内で本来の使い方(CTRL+Cのコピー)ができるように戻す方法はないのでしょうか?
>>969 どんな訳か知らないけど、マクロ割り当てるのは Ctrl+Shift+キー にしようぜ。
質問です。 001〜200の値をFor Nextで繰り返したいのですが、 001〜099までが繰り返せません。 今は以下の様に00+(1〜9)、0+(10〜99)、100〜200に分けているのですが、 For i1 = 1 To 9 A = "00" & i1 Next i1 For i2 = 10 To 99 B = "0" & i2 Next i2 For i3 = 100 To 999 C = i3 Next i3 これを一括で処理することは可能でしょうか?
>>971 Sub test()
Dim i As Integer
For i = 1 To 200
Debug.Print Right("00" & CStr(i), 3)
Next i
End Sub
入力限定で、数字のみは分かったのですが 数字とマイナスのみの場合はどうやればいいでしょうか?
975 :
デフォルトの名無しさん :2010/01/02(土) 14:25:53
Excel VBAを使えばプロキシ経由で掲示板に1行目から順に掲示板へ連続投稿できますか?
出来るだろうけど重い串使うと同期かけるのがマンドクセだと思う
>>976 やるとすればどのように実現するのでしょうか?
本文作成 → URL合成 → 書き込み実行 問題は書き込み実行だね データを直で送るにしろテキスト入力にしろ串使う際のラグをどうやって処理するかだかねえ 思いつきだけどページからソースデータ抜き出して、最後部にある定型文言と合致判定を使うとか出来そうだな XML制御したほうがいいとは思うけど
>>975 ほかの言語でやったほうが楽じゃね?
本文と数行のスクリプト用意すればできるから。
そんな荒しに構うなって
981 :
デフォルトの名無しさん :2010/01/03(日) 23:45:15
宜しくお願い致します。 特定の文字の前後どちらでも良いので、 指定した文字の前後どちらかにカーソルを挿入 するマクロを作りたいと思います。 そこであれこれ調べましたが結局分からず困っています。 宜しくお願い致します。
sendkeyでも無理なのかな
セルの中にabcdeと書いてて そのcとdの間みたいにカーソルとかは無理と思うけど
984 :
デフォルトの名無しさん :2010/01/04(月) 00:24:58
Excel VBAでHTTPサーバを作れますか?
テキストボックスとかなら出来たようなきもしなくも どうだっけな
>>981 sendkeysで出来ました
cells(1,1)に0123456789と合って
4と5の間にカーソルを置きたい場合は
Sub test()
Cells(1, 1).Select
SendKeys "{F2}"
For i = 1 To 5
SendKeys "{LEFT}"
Next i
End Sub
もっと良い方法がありそうな
987 :
デフォルトの名無しさん :2010/01/04(月) 10:56:34
>984 できるんじゃね? #意味ねーと思うけどw
988 :
デフォルトの名無しさん :2010/01/04(月) 23:34:06
981です。本当に皆さん有難うございます。
感謝です!!!
>>982 sendkeyなるものを始めて知りました。
これで何とかなりそうです。
有難うございます。
>>986 これで問題は解決しました。
今まで数百会った煩わしい作業が一気に楽になります。
本当にわざわざコードまで考えて頂き感謝です。
僕の頭では一生考えても無理でした。
本当に有難うございます!
小数点第二位までの入力以外はエラー出るようにしたいんだけどどうしたらいいのか・・・ 具体的には、テキストボックスに0.01〜5.00以内の入力をさせて、それ以外の入力(3.564みたいに小数点3位以下)はNGみたいにさせたいんだが。
色々ググったら len関数 isnumeric関数 instr関数の複合でチェック出来そうだけど他の方法あれば後学のためにも教えてください。
>>989 100倍して切捨てして比較するとか。
int(n * 100) = (n * 100)
if ROUNDDOWN(数値,桁数)=入力値 then とかできるんじゃないの
数値として処理すると誤差でうまく動かないことがあるから文字列でやった方が安全
>>990 お前の事だ
脳味噌のレベルが低いって事
995 :
デフォルトの名無しさん :2010/01/06(水) 09:04:01
初心者です、教えて下さい。 VBAからWindows(DOS)にシステムコール(DIR)して、カレントフォルダーに存在する 全てのファイル名を得て、結果をセルに表示させたいのですが、 システムコールって可能なんですか?
APIの事を言ってんのだったら可能だけど、別にそれを呼ばなくても一覧の取得は出来るっしょ
997 :
デフォルトの名無しさん :2010/01/06(水) 09:38:10
>>996 そうなんですか?
自分はDOSしか知らず、仕事で長年WINDOWSは使ってましたが
メールくらいしかやりません、本日はじめて自動マクロを経験しました、
ヘルプで調べてもよく分かりません・・・
今まで必要に応じて専用ツールを作ってくれていた事務の女の子がいましたが、
暮れに辞めてしまって、新年から仕事が回らずてんてこ舞い状態です。
998 :
996 :2010/01/06(水) 09:56:20
ぐぐればいっくらでも見本は出てくるけど… Sub Sample1() Dim i As Long, buf As String Const Path As String = "C:\Work\" buf = Dir(Path & "*.*") Do While buf <> "" i = i + 1 Cells(i, 1) = buf buf = Dir() Loop End Sub Sub Sample2() Dim i As Long, FSO As Object, f As Object Const Path As String = "C:\Work\" Set FSO = CreateObject("Scripting.FileSystemObject") MsgBox "全部で" & FSO.GetFolder(Path).Files.Count & _ "個のファイルがあります" For Each f In FSO.GetFolder(Path).Files i = i + 1 Cells(i, 1) = f.Name Next f Set FSO = Nothing End Sub
999 :
デフォルトの名無しさん :2010/01/06(水) 10:30:25
>>998 どうもすみません。
早速、自分のエクセルプロジェクトにコピーして検証&調整してみます、
WINDOWS系は難しいですね、DOSは楽でした(遠い目)
昔は、DIRをリダイレクトするバッチを実行すれば良かったんですが
WINDOWSになってから全然ついていけなくなってしまって・・・
実は、今週末に部長に提出する資料の為に必要な機能なんですよ、
助かりました、本当に有難うございました。
1000 :
デフォルトの名無しさん :2010/01/06(水) 10:32:00
999=997=995です、念の為。 それと998さん、本当に本当に有難う御座いました。
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。