MARU4812 の回答履歴

全768件中81~100件表示
  • NumericUpDown.HasChildre

    よろしくお願いいたします。 NumericUpDownコントロールのHasChildreはなぜTrueとなるのでしょうか? GroupBoxなどが子コントロールを持つのは直感的に分かるのですが、 NumericUpDownが子コントロールを持つという意味が分かりません。 もちろん、NumericUpDown上に他のコントロールは配置しておりません…。

  • ご質問

    VBの質問です。 1. ↓のようなサンプルがございます。:(コロン)の意味がわかりません。 Public Const A As Byte = 0 Public Const B As Byte = 1 Select Case xxxxxxxxxx Case A: xxxxxxxx Case B: xxxxxxxx End Select 2. MSCOMMコントロールを使用しています。 問題で、 Dim A AにMSCOMMコントロールをセットするとあります。 Dim A As MSCOMM これで正しいのでしょうか?

    • ベストアンサー
    • noname#187796
    • Visual Basic
    • 回答数3
  • VBA コンパイルエラーが出る

    IEを起動し、サイトを巡回するようなVBAプログラムを使用しています。 数か月前までは、正常に使えていましたが、昨日起動するとエラーが出て止まるように なってしまいました。 使用しているのは同じマシンからです。コードも数か月前となにも変わっていません。 OS、エクセルソフトの問題かと思い、エクセルのみ再インストールしましたが改善されません。 エラー内容は、マクロ実行時に「コンパイルエラー プロジェクトまたはライブラリが見つかりません。」 とのエラーが出て、以下コードのうち一部分が暗転しています。 最初に(1)のStringが暗転したので、テストでこの行を無効化して走らせたら、今度は(2)のChrが 暗転するようになりました。 (1)cookiepath = String(MAX_PATH, vbNullChar) →Stringが暗転 (この間に数行) (2)cookiepath = Left(cookiepath, InStr(1, cookiepath, Chr(0)) - 1) →Chrが暗転 作成したのが自分でないため、プログラム内容もいまいち理解していないんですが 同じ環境下で同じプログラムを使用し、時期によって起動するしないが分かれるのは 不可解です。 だからといって、エクセルそのものを再インストールしても改善されない為 これ以上何を変えればよいか分からず、お手上げ状態です。 何か解決策をご存じの方は教えていただけませんでしょうか。お願いいたします。

  • VBAでフリーエディターのテキストを開く方法?

    VBAマクロでは Shell関数をつかって、フリーなアプリ単体を立ち上げことは 可能なようですが、 フリーエディターで目的のテキストファイルを一挙に 開くことはできるのでしょうか? イメージ Shell "フリーエディター" "開く対象の適宜なファイル" なのですが、 できるかできないかをまずしりたいのでよろしくおねがいします。

  • vb2010でCSVファイルを並び替えて保存方法

    初心者なので申し訳ございません いろいろとネットで調べてみたのですが、うまく出来ないので質問させて下さい。 CSVファイルで以下の様なデーターがあります。 バナナ,oooo300,xxxx リンゴ,oooo200,xxxx パイナップル,oooo500,xxxx 3番目の項目を数字の大きい順に並び替えて別ファイルに保存したいのです。 ファイルを読み込む ↓ 並び替える ↓ 書き込む ↓ ファイル保存 の順番と思ってやっているのですが・・・・ 並び替え方法が分かりません 宜しくお願いします。m(__)m

  • VB.NET EXCEL

    下記のコードで、アプリケーション実行中 EXCELが起動したままになり アプリケーション終了時に、EXCELも一緒に終了する という、タスクマネージャーに残るという動作になります。 どこの COM の扱い方がまずかったのでしょうか? 教えてください。お願いします。 ※文字数制限で、SQLコネクション周り、SQL系宣言 エラー処理を消しました。 ※EXCEL周りに関してはすべてそのままです。 変数に代入している COMオブジェクトをすべて Marshal.FinalReleaseComObject してもEXCELが終了しないので何かしら COMオブジェクトを見落としていると思うのですが どれだかわかりません。 よろしくお願いします Imports Microsoft.Office.Interop Imports System.Runtime.InteropServices Public Class Cls_Print_Excel Public Sub S_Print_Excel() 'エクセルアクセス用 Dim _xslFile As String = "C:\base.xls" Dim objExcel As Excel.Application = Nothing Dim objWorkBook As Excel.Workbook = Nothing Dim objWorkBooks As Excel.Workbooks = Nothing Dim xlSheet As Excel.Worksheet = Nothing Dim xlRange As Excel.Range = Nothing Dim xlPageSetup As Excel.PageSetup = Nothing Try objExcel = New Excel.Application objWorkBooks = objExcel.Workbooks objWorkBooks.Open(_xslFile) objWorkBook = objExcel.ActiveWorkbook xlSheet = DirectCast(objWorkBook.Worksheets(1), Microsoft.Office.Interop.Excel.Worksheet) rs = cm.ExecuteReader() I = 3 Do While rs.Read Dim AA() As String = {"B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M"} Dim K As Integer For K = 0 To 11 IN_Range(xlSheet, AA(K) & I.ToString, rs(K).ToString) Next xlRange = xlSheet.Range("3:3") xlRange.Copy() A = A + Marshal.ReleaseComObject(xlRange) xlRange = xlSheet.Range(I.ToString & ":" & I.ToString) xlRange.PasteSpecial( _ Paste:=Microsoft.Office.Interop.Excel.XlPasteType.xlPasteFormats, _ Operation:=Microsoft.Office.Interop.Excel.XlPasteSpecialOperation.xlPasteSpecialOperationNone, _ SkipBlanks:=False, Transpose:=False) A = A + Marshal.ReleaseComObject(xlRange) xlRange = xlSheet.Range(I.ToString & ":" & I.ToString) xlRange = xlRange.EntireRow xlRange.AutoFit() A = A + Marshal.ReleaseComObject(xlRange) xlRange = xlSheet.Range(I.ToString & ":" & I.ToString) N = 5.5 While True If CType(xlRange.RowHeight, Double) < N Then Exit While Else N += 5.5 End If End While xlRange.RowHeight = N '高さを設定 A = A + Marshal.ReleaseComObject(xlRange) I += 1 'ループカウンタを積む Loop xlPageSetup = xlSheet.PageSetup xlPageSetup.PrintArea = "B2:M" & (I - 1).ToString A = A + Marshal.ReleaseComObject(xlPageSetup) S_filename = System.IO.Path.GetDirectoryName(_xslFile) & Format(Now(), "yyyy-MM-dd-HH-mm-ss") & ".xls" objWorkBook.SaveAs(S_filename) objWorkBooks.Close() A = A + Marshal.ReleaseComObject(objWorkBooks) objExcel.Quit() A = A + Marshal.ReleaseComObject(objExcel) Exit Sub Catch ex As Exception Finally End Try End Sub Private Sub IN_Range(ByRef wSheet As Microsoft.Office.Interop.Excel.Worksheet, _ ByVal iCell As String, _ ByVal Value As String) Dim rng As Excel.Range = wSheet.Range(iCell) rng.Value = Value Marshal.FinalReleaseComObject(rng) rng = Nothing End Sub End Class

  • マクロCSV出力

    Sheet1に入力されている値をCSVファイルに出力したいと思っております。 但し、特定のセルだけを取得して、1つのファイルに出力したいと思っています。 (1)D2~G2に入力されている値を取得 (2)E4~E10までと、E4~E10の最終列までの値を取得 (3)B11の値を取得 (4)A13~A列の最終行まで、A13~A列の最終行の最終列までの値を取得 (1)、(2)、(3)、(4)の値を取得して、1つのCSVファイルに出力するプログラムを作成したいと思っております。 (1)は1行目に出力 (2)は2行目~8行目に出力 (3)は9行目に出力 (4)は10行目以降に出力 出力の形式は ”TEST”,” ”,”SMP”のようにダブルクォーテーションで値を囲って出力したいと思っています。 値が入っていないセルは” ”,としたいと思っております。 サンプルを作成して頂けないでしょうか。

  • MDIの親フォームから子フォームの操作

    VB2010のMDIの親フォームからの操作に関してです。 MDIで設定された親フォームのMenuStripから子フォームのTextBox1のTextの値をMsgBoxで取得したいのです 出来る事なのかどうか分からないですが、初歩的な質問でご迷惑をお掛けします・・・

  • VB6でのフィールド定義

    基本的な質問で申し訳ございません。 VB6を使用して画面作成しています。 1. 例えば100桁, CHAR型のフィールドをユーザーコントロールで定義する方法を教えてください。。 もしくは、標準モジュールなどで定義するのですか? 2. MAXの表示桁数はいくつですか?

    • ベストアンサー
    • noname#187796
    • Visual Basic
    • 回答数1
  • VBA 変数に格納できる文字数に制限が?

    いつもお世話になります。 excel VBAで、エクセルの行を本文としたメールを作成するマクロを作りたいと考えています。 直接メーラーにデータを渡すプログラムは難しく、またサンダーバードなので対応しているか 分からないため、エクセル関数のハイパーリンクを使ってクリックでメーラーが立ち上がり 本文が入力されている...というものを作っています。 現在のコードは以下です。 ’範囲内のセル本文を改行つきで「linktext」へ格納する linktext = "" Do Until Sheets("sheet2").Range("B" & cnt).Value = "adress" linktext = linktext & "A" & cnt linktext = linktext & "&" linktext = linktext & """%0a""" linktext = linktext & "," cnt = cnt + 1 Loop 'ハイパーリンクとしてセルへセット finaltext = "=HYPERLINK(""" finaltext = finaltext & "mailto:""" finaltext = finaltext & "&""" finaltext = finaltext & meruado finaltext = finaltext & """&" finaltext = finaltext & """?subject=""" finaltext = finaltext & "&""" finaltext = finaltext & kenmei finaltext = finaltext & """&" finaltext = finaltext & """&body=""" & "&CONCATENATE(A12)," finaltext = finaltext & linktext finaltext = finaltext & ")," finaltext = finaltext & """" finaltext = finaltext & meruado finaltext = finaltext & """" & ")" Sheets("sheet2").Range("A1").Formula = finaltext 見よう見まねで作ったので、分割されていてすみません。 上記マクロを走らせ、できた関数は以下のようになります。 =HYPERLINK("mailto:"&"○○@hotmail.com"&"?subject="&""&"&body="&CONCATENATE(A10&"%0a",A11&"%0a",A12&"%0a",A13&"%0a",A14&"%0a"・・・以下続いていく) で、ここで問題が。 上記の関数が非常に長くなった場合、変数「linktext」「finaltext」への格納が途中で切れてしまうようなのです。 具体的には、おしりが「A35」になるあたりで止まっており、lenで調べると、609で止まっているようです。 もっと多くの文字数を一つの変数に格納することはできますでしょうか? また、さらにそれを使ってエクセルのセルにハイパーリンクをセットし、クリックして正しいメール本文が 立ち上がるようにすることはできるのでしょうか?

  • ListViewで条件式を使う方法

    Visual Basic 2010でDatasetとListviewを使ってプログラムを作成しています。 DatasetのデータをListviewに表示させるプログラムは下記のコードで完成しました。 ******************************* Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load With ListView1 .Columns.Add("date", 40, HorizontalAlignment.Left) .Columns.Add("no", 40, HorizontalAlignment.Left) .Columns.Add("住所", 100, HorizontalAlignment.Left) showlist() End With End Sub Private Sub showlist() Try 住所TableAdapter.Fill(Kz526DataSet.住所) Catch ex As Exception MessageBox.Show(ex.Message, "住所テーブル") End Try With Kz526DataSet.住所 For i As Integer = 0 To .Rows.Count - 1 ListView1.Items.Add(.Rows(i)("date"), (i)) ListView1.Items(i).SubItems.Add(.Rows(i)("no")) ListView1.Items(i).SubItems.Add(.Rows(i)("住所")) Next End With End Sub ************************************ 次に、Datasetのデータの内一部だけListviewに表示させることにしました。そのため、テキストボックスを設けて、その日付と同じデータをListviewに表示させます。 テキストボックスを設けて、ボタンをクリックしてデータをListviewに表示させようとしたコードです。 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load With ListView1 .Columns.Add("date", 40, HorizontalAlignment.Left) .Columns.Add("no", 40, HorizontalAlignment.Left) .Columns.Add("住所", 100, HorizontalAlignment.Left) showlist() End With End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click 住所TableAdapter.Fill(Kz526DataSet.住所) With Kz526DataSet.住所 For c As Integer = 0 To .Rows.Count - 1 If TextBox1.Text = Kz526DataSet.住所.Rows(c)("data") Then ListView1.Items.Add(.Rows(c)("date"), (c)) ListView1.Items(c).SubItems.Add(.Rows(c)("no")) ListView1.Items(c).SubItems.Add(.Rows(c)("住所")) End If Next End With End Sub *************************************** このコードでは、条件式とListViewの関係がいまくいきません。エラーメッセージは次の様に表示されます。 「'3' の InvalidArgument=Value は 'index' に対して有効ではありません。 パラメーター名: index」 いろいろ試行錯誤してみましたところ、「ListView1.Items(c).SubItems.Add(.Rows(c)("no"))」のところで止まります。 if文では、Thenのあとは1行しか書けないのでしょうか。書き方をご指導ください。

  • VB6からVB.NETへの移行

    VB6で作ったプログラムをVB.NETへ移行したいのですが、 参考書で体系的に学んだほうがよいのでしょうか? それとも、分からなくなったら、ネットで調べているその場その場で解決している方法がよいのでしょうか? 時間的な余裕は比較的あります。 書籍やネットでお勧めを押してください。

  • Paintpicture描画時のクリックイベント

    お知恵を貸してください! ただいま「ランダムな場所にImageを描画して、そのイメージをクリックするとイベントが起きる」という プログラムを組んでいます。 Paintpictureを使って、ランダムに描画することはできたのですが、 描画したイメージをクリックしてもイベントの動作を行ってくれません。 使用しているのはVB6.0です。 プログラムは以下のとおりです。 Imageは透過GIF(Image1)と保険にマスクイメージ(Image2)を使用しております。 ------- ・描画プログラム Private Sub Command1_Click() End End Sub Private Sub Timer1_Timer() x = Int(rnd * Form1.Width) - (Image1.Width \ 2) y = Int(rnd * Form1.Height) - (Image1.Height \ 2) Form1.Refresh Form1.PaintPicture Image2, x, y, , , , , , , vbSrcAnd Form1.PaintPicture Image1, x, y, , , , , , , vbSrcPaint End Sub ------- ・行動プログラム Private Sub Image1_Click() MsgBox "Score gat" End Sub ------- アドバイス、ご指摘お願いいたします。

  • VLOOKUP関数についての質問

    sheet1にある番号がsheet2にあればBの○×をsheet1に反映させたいのですが VLOOKUPを使用してもうまくいきません。 もしかして文字列と標準になっていたりするとうまく検索できないのか、この関数は不向き なのか、悩んでます。 説明がうまくできないのですが、よろしくお願いします。 sheet1      A       B      C 1 09012345678 2 09012345679 3 4 5 sheet2 番号データ      A       B      C 1 09012345678  ○ 2 09012345679  × 3 09013456569  ○ 4 09089897899  ○ 5

  • WINDOWS7用のEXE

    Windows 7で動くプログラムの作成方法(移行方法)について質問です。 ◆プログラム VB.NET(.NET FRAMEWORK1.1)で作成したプログラムがあります ◆現行のユーザー環境 Windows XPで動かしていました ◆移行したい環境 Windows 7で動かしたいです ◆質問 OSが32ビットから64ビットになるにあたってDLLを変更する必要があると思っていますが、旧システムで使っていたDLLに対応する、新システムのDLLはどうやって探せば良いのでしょうか? コンパイル、EXEの作成はWindows7環境で実施するという認識でよいでしょうか?

  • VB2010で配付した添付ファイルが読み取れない

    Visual Sutudio にて ほかのPCでCDなどで配布するためのインストーラをつくりましたが、 配布先(Windows7,WindowsXPとも)でどうしても AAA.mdbファイルがみつからない、というエラーになります。 エラーがでないように正常に動作させるにはをどうしたよいでしょうか? たとえば、このAAA.mabファイルを使用すると、以下のエラーが表示されます。 アプリケーションのコンポーネントで、ハンドルされていない例外が発生しました。 [続行]をクリックすると、アプリケーションはこのエラーを無視し、続行しようとします。 [終了]をクリックすると、アプリケーションは直ちに終了します。 ファイル'C:\Documents and Setting\***\Local Settings\Apps\2.0\M2XB***.G17\5KL3***4.7WK\ ****tion_0000000000******\AAA.mdb' が見つかりませんでした。 上記のフォルダに AAA.mdbをコピーするとプログラムは正常に動きます。 自分のPCでは特にコピーせずとも正常に動きます。 また、 Apps\2.0\M2XB***.G17\5KL3***4.7WK\****tion_0000000000******\AAA.mdbには、mdbファイルが ないのですが、 Apps\2.0\M2XB***.G17\5KL3***4.7WK\****exe_0000000000******\AAA.mdbには、mdbファイルが 入っています。 Visual Sutudio のなかで、サーバーエクスプローラのデータ接続に AAA.mdbファイルが入っているのですが、 そのアイコンのところに ”X”が赤ででるのも気になります。 また、起動条件のなかの .NET Framework にも”!”マークがついています。 さらに(関係ないと思いますが)Visual Sutudioで、プロジェクトを開くと とエラーがあり、ソリューションエクスプローラで見つかった依存関係を ダブルクリックすると消えます。

  • VBからのACCESSの起動に関して

    開発環境:Visual Basic 2008/ACCESS 2000 VB2008よりACCESSを更新したり、ACCESSのレポートを使用したりする プログラムを作成しています。 その際に、1つのACCESSに複数のレポートを作成している事から、複数のプログラム からACCESSを起動させようとするとエラーとなってしまいます。 ACCESSをそれぞれ分けてしまえば問題ないですが、、、、 そもそも1つのACCESSファイルを複数からアクセス(複数のVBプログラム)するという事が 不可能なのでしょうか? あるいは、下記の記述にあるように、データベースを開こうとするかエラーである為、 開いているか確認の記述をし、既に開いているようだったら、その処理をとばすような事 をすれば問題ないのでしょうか??? 教えて頂きたいと思います。 よろしくお願いします。 《記述内容》 Dim ac As Object ac = CreateObject("Access.Application") With ac 'アプリケーションを表示する ac.Visible = True 'データベースを開く ac.OpenCurrentDatabase("C:\sample.mdb") '名前を指定してレポートを開く ac.DoCmd.OpenReport("R_一覧表", 2) 'acViewPreview 'レポートの最大化 .DoCmd.Maximize() 'オブジェクトの解放 System.Runtime.InteropServices.Marshal.ReleaseComObject(ac) End With ac = Nothing

  • VBAなんですが・・・うまく計算されません。

    ローレル指数の計算がしたいのですが、 体重÷身長^3×10^7 が公式で、 エクセルのセル、 B2に身長、B3に体重を入力します。 私は、 cells(4,4)=cells(2,3)/cells(2,2)^3*10^7 と入力したけれご、エラーです。 どこがどう間違ってるのでしょうか・・・?

  • VB6、VBA、vb.net

    この認識で合ってるか教えてください。 「VB6、VBAには.NET Frameworkは使われていないけど、 vb.netからは.NET Frameworkが使われている」 であってますか?ご回答よろしくお願いします。

  • 和暦→西暦(有効範囲を考慮)

    いつもお世話になってます。 VB2010(.NET2.0)、Winアプリ 和暦(元号)と西暦の相互変換についてです。 CultureInfo、JapaneseCalendarを使用して変換しています。 西暦→和暦の変換は問題ないんですが 和暦→西暦の変換時に有効ではない和暦を指定するとエラーとなります。 ここの「有効ではない和暦」というのは例えば「大正30年」とかです。 フォーム上にComboBoxとTextBoxが配置されており ComboBoxには「明治」「大正」「昭和」「平成」を格納、 TextBoxは数値入力のみですが2桁数値というだけで 他の制限はかけていない状態です。 各元号に有効な値を保持しといてって方法は最終手段です。 出来るだけ汎用性を持たせた形で上記エラーを回避したいと思っています。 思いついてる方法はあまりスマートではないので どなたか、こんな風にコーディングすれば出来るよって ヒントでもいいのでご意見いただけると幸いです。 よろしくお願いしますm(_ _)m