how-do-you-do の回答履歴
- 構造体のソートに関して
VB初心者です。 Private Save() As InIDtyp Private Type InIDtyp ID As String Name As String Unit As String End Type という宣言をしま構造体で値が入っているときにIDをキーとしてソートすることは可能でしょうか。 1回やってみたのですが、IDのみソートされてしまい、NameとUnitは一緒にソートされずにそのまま残ってしまいました。 デバッグをかけて中を見ましたらこんな感じでした。 例: 元の構造体 Save(0) ------ID: 56 ------Name: AA ------Unit: ms Save(1) ------ID: 35 ------Name: KY ------Unit: yy Save(2) -----ID: 33 ------Name: LI ------Unit: ba ソート後 Save(0) -----ID: 33 ------Name: AA ------Unit: ms Save(1) -----ID: 35 ------Name: KY ------Unit: yy Save(2) -----ID: 56 ------Name: LI ------Unit: ba どなたか構造体のソートのやり方をご存知の方がいましたらご教授お願いします。
- 締切済み
- Visual Basic
- musashi999
- 回答数2
- Access クロス集計 レポート 合計値
accessでクロス集計クエリを作成し、その結果でレポートを作りました。 総計やグループごとの合計値を表示したいのですが、マニュアル本やヘルプを見ても「sum」利用しか出てきません。 (本当はあるのかもしれませんが、見つけられませんでした) テキストボックスに一個一個「sum」を入れて合計値を作るしかないのでしょうか? データ量が物凄く、集計するデータ(列)が500以上あるので、大量のsumと戦わなければなりません。 何か良い方法があると思うのですが、見つけることができません。 どなたかご教示いただければ幸いです。 当方の環境: win2000 access200 なお私のレベルは簡単な関数を使えるだけで、SQLやVBAはチンプンカンプンです。 よろしくお願いいたします。
- VBで作成したアプリからExcelを開き文字列を検索・置換したい
環境:OS.Win2000、Excel2000、VB6 VBで作成したアプリからExcelを開き文字列を検索・置換し保存して閉じる という流れの処理をしたいのですがエラーが発生してしまいます。 Private Sub Command1_Click() Dim xlApp As Object Dim xlBook As Object Dim ret As Object 'OPEN Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("c:\aaa.xls") xlApp.Application.Visible = True '置換 xlApp.ActiveCell.Replace what:=TextBox1.Value, _ replacement:=TextBox2.Value, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, MatchByte:=False '検索 Set ret = xlBook.Application.Cells.Find(what:=TextBox1.Value, _ After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, _ SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, _ MatchByte:=False) ret.Activate '終了 xlApp.Quit '開放 Set xlBook = Nothing Set xlApp = Nothing End Sub 上記の状態だと ”指定された文字列に置換” の所で ”オブジェクトが必 要です”とエラーが出てしまいます。エラーNOは424です。ちなみに検索 では”Rangeクラスのfindプロパティを取得できません”(1004)となりま す。どうすればエラーが出ないように出来るのか分かりません。また、外部 のアプリでオートメーションを利用する際に気おつけなければいけない事が あれば教えてください。ちなみにExcelのVBA上で実行すると置換までは動作 します。検索の所でエラー1004が発生します。さっぱり理解できません。で きればこの違いも教えてください。続けての質問ですがよろしくお願いします。
- ベストアンサー
- Visual Basic
- ta55
- 回答数3
- ACCESS合計の出し方
ACCESS2000で、データベース作成しております。 フォーム 1.名前 2.合計 サブフォーム 1.No 2.点数 サブフォームの点数の合計を、フォームの合計へ自動計算されるようにしたいのですが・・。 フォームの合計テキスト プロパティ⇒イベント⇒更新後処理 へ下記の式を入れても何も表示されません・・。 Sum [フォーム名.テキスト名] どうすればよいのでしょうか? お願いします。
- ベストアンサー
- その他(データベース)
- piyochan
- 回答数4
- ACCESS2000のタブ移動順
よろしく、お願いします。 ACCESS2000+WinXPProを使用しております。 フォームを作り終え、プロパティのタブ移動順を変えようと思ったのですが、変更しても勝手に順番を帰られてしまいます。 つまり、17番目にしようと”17”と入力しても、エンターをすると、勝手にほかの番号(例えば”50”)に変えられてしまいます。 なぜでしょうか? よろしく、お願いいたします。 また、タブコントロールを使用しており、その中の問題であります。 よろしくお願いいたします。
- 時間を差し引く
こんにちわ。VB、かなりの初心者です。 タイトルの通りある時間から分を差し引くプログラムを作成しているのですが、効率のいい方法が見つかりません。 例えば、12:03から30分だけ時間を差し引くというプログラムです。 今は、時間と分に分割して、分にマイナスが出れば時間を-1し、60分からマイナス分を差し引くという方法でやっています。上記の12:03から30分だけ時間を差し引くという例でしたら11:33が表示されます。 ただコードも長く見にくくなるので、効率のいい方法がないかなと質問させていただきました。 よろしくお願いします。
- 締切済み
- Visual Basic
- kan1238
- 回答数3
- Excelのコードウィンドウでマウススクロールが出来ない
Excel2003です。 シートはスクロール出来るんですが、コードウィンドウでマウススクロールが出来ません。 PC 2台(VAIO PCV-V10B & NEC LN500/7D)とも出来ません。いづれも製品付属マウスです。 ExcelのBookは Excel2000で作成したものです。 Excel2000ではスクロール出来ます。
- VBAの関数について…
いつもお世話になっています。 現在、Access97を使用しているのですが、あるPCで、Format関数、Data関数 が使用できない現象がおこっているのです。他のPCでは問題ないのですが、 原因がよくわからなくて…。OSはWin98でAccess95も一緒に入っているのですが 間違っても95で開いてないのは確かです!!なにかインストールした時に不具合が起こったのでしょうか? 対策として考え得るものがありましたら、教えて下さい。 お願いします。
- AccessDBAについて…
こんばんわ。AccessDBAを使っているのですが、わからないことがありまして、ご質問させていただきます。 テーブルのデータをコンボボックスに設定しているのですが、そのコンボボックスに値を入力できないように設定できないのでしょうか?[更新を許可する]を[いいえ]にしたり[編集ロック]を[はい]にすると値を入力できないのはいいんですが選択も出来ない(T T)。なにか方法はありますか?
- ACCESSのVBAにてExcelのシートをコピーしたい
入庫.xlsに現在、"原紙"というシートがあります。 入庫.xlsには、"原紙"と入庫のあった日のシートがあるようにしたいのです。 今日、入庫があれば、入庫.xlsには "原紙"と"20"のシートが存在するようにしたいのです。 AccessのVBAにて1文でシートのコピーってできないでしょうか? Dim oApp As Object Dim StWk1 As String Dim SHizk As String Dim Hizk As Integer Hizk = DatePart("d", Me![入庫日付]) SHizk = CStr(Hizk) StWk1 = "c:入庫.xls" Set Xls = GetObject(StWk1) Xls.Application.Windows(1).Visible = True Xls.Application.worksheets("原紙").Copy After:=Xls.Application.worksheets(SHizk) Xls.Application.worksheets(SHizk).Activate 上記のように作成してみたのですが、実行すると、 Xls.Application.worksheets("原紙").Copy After:=Xls.Application.worksheets(SHizk) のところで、エラーになります。 実行エラー'9': インデックスが有効範囲にありません。 のメッセージが表示されます。 教えてください。
- ベストアンサー
- その他(データベース)
- ayu134
- 回答数3
- VBのデータグリッドが表示されない!!!
こんにちはtmgmです。 データグリッドが表示されません。 状況としては 1.プログラムは正常に動いています。(「接続に成功しました」メッセージ、「レコード取得に成功しました」メッセージ、ともに表示されます。) 2.しかしデータグリッドには何一つ表示されません。(ツールボックスから貼り付けたままの状態です) 3.参照設定はMicrosoft ActiveX Data Objects 2.5 Library、コンポーネントはMicrosoft DataGrid Control6.0(SP5)(OLEDB)です。 どなたかお分かりになる方いらっしゃいますでしょうか?非常に困っています。 ご返答よろしくお願いします。 ------------------------------------------------ Dim CONN As ADODB.Connection 'レコードセットの宣言 Dim RECO As ADODB.Recordset '接続の宣言 Set CONN = New ADODB.Connection '接続のプロパティ With CONN .ConnectionString= "provider=Microsoft.jet.oledb.4.0;" _ & "data source=C:\TESTMDB.mdb" .Open End With MsgBox "データベース接続に成功しました" 'レコードセットのプロパティ Set RECO = New Recordset With RECO .ActiveConnection = CONN .Source = "SELECT ~(省略)" .CursorLocation = adUseClient .CursorType = adOpenStatic .LockType = adLockOptimistic .Properties("IRowsetIdentity") = True .Open End With 'レコードセットをデータグリッドに連結 Set D_GRID.DataSource = RECO MsgBox "レコードセット取得に成功しました ------------------------------------------------
- 締切済み
- Visual Basic
- tmgm
- 回答数4
- リンクテーブルを CopyObject するとリンク情報がコピーされる
ACCESSでリンクしたテーブルを DoCmd.CopyObject でカレントのmdbにコピーすると、テーブル本体ではなく、リンク情報がコピーされてしまいます。 リンクされたテーブルの本体をコピーするにはどうすれば良いのでしょうか。 データ用のmdbとプログラム用のmdbを分けていて、プログラム側からテーブルをバックアップしたいので、このような方法をとっていますが、他に良い方法があれば教えてください。
- ベストアンサー
- その他(データベース)
- bsi_taro
- 回答数2
- 文字列の数値変換(それだけなのですが・・・)
ファイルに角度とCOSとSINのデータが入っていて、 それぞれ360個あります。 この時、SINとCOSのデータを文字列でINPUTしてBASICの中で数値化(VAL関数で)したいのですが、全部0になってしまいます。倍精度(#)、単精度(!)共に試しましたが 駄目でした。 どなたか解決策を教えて下さい。(データは小数点以下6から7)
- ベストアンサー
- Visual Basic
- eva2015
- 回答数3
- accessクエリの「SQL」を検索する方法
accessクエリの中の 「select * form *****」 の中の文字列検索を複数のクエリを対象として実行できるようなソフトまたは 複数のクエリのSQLをテキスト化してくれるようなソフトはあるものでしょうか。 #クエリの結果のレコードの検索でなく、SQLの文字列を検索したいだけ。
- ベストアンサー
- その他(データベース)
- s-holmes
- 回答数1
- AccessデータをExcelデータに変換して送信
Access2000とOutlookExpressを使用しています。 実現したいことは、 コマンドボタンをクリックするとある特定のデータがExcelに 変換されて、そのExcelファイルが自動で添付ファイルとして 特定のアドレスに送信されるようにして、 さらに、送信したExcelファイルを自動で消去したいのですが。 いかがなものでしょうか? 今現在はExcelファイルを自動で変換するところまでは できましたが、その後がどうすれば良いのか分かりません。 以上、良いアドバイスをお願い致します。
- ベストアンサー
- その他(データベース)
- ikuyama
- 回答数2
- アクセスのレポートで…(´`)
アクセス初心者です。 履歴を含む、顧客のデータの登録原簿を作っています。 最終的に、この登録原簿をレポートで印刷できるようにしたいと考えています。 レポートはA4の用紙を縦に使用し、上下半分ずつに分け、上部に顧客に関するデータを、下部には顧客の注文年月日と注文番号を表示したいと考えています。 この注文年月日と注文番号は、随時増えていくものなのですが、このデータが縦に、順番に増えつづけると、レポートがすぐにいっぱいになり、顧客1人に対して、レポートが、2枚、3枚と増えていく事になります。 そこで、注文年月日と注文番号のデータだけ、2列、もしくは3列に表示できるようにし、ある一定の数までデータがたまったら、横の列に移動し、続きのデータが蓄積されるようにしたいのですが、そういった事は可能でしょうか? もし、方法をご存知でしたら、ぜひぜひ教えてくださいm(_ _)m切実です。よろしくお願いします。