Clipの使い方良くわかりません。噛み砕いて教えてくれませんか、宜しくお願いします。
多少難しい話にも辞書片手に読みますので宜しくお願いします。

このQ&Aに関連する最新のQ&A

VB 文字列」に関するQ&A: VB6 文字列間 入力

A 回答 (2件)

MSHFlexGrid1のMouseUpのイベントに


>  MSHFlexGrid1.Clip = "あ" & vbTab & "え" & vbCr _
>            & "お" & vbTab & "ん"
を追加して、MSHFlexGrid1内のをマウスによる複数行列にまたがる範囲選択をしてみてください。
何度か行っているうちに、イメージがつかめるかも知れません。

イメージがつかめたら、以下を読んでください。
MSHFlexGrid1のMouseDownイベントで以下の値が設定されています。
MSHFlexGrid1.Col   '選択範囲開始の列
MSHFlexGrid1.Row   '選択範囲開始の行
MSHFlexGrid1.ColSel  '選択範囲終了の列
MSHFlexGrid1.RowSel  '選択範囲終了の列
Clipプロパティは、その範囲に文字列をセットする時に使用します。
文字列はvbTagで複数列にまたがり、vbCrで複数行にまたがる事も可能です。

これらを応用すると
Col/Row/ColSel/RowSelに任意の自分でセットすることによって範囲選択をさせることが可能となり、またその部分に文字列をセットすることもできるようになります。


http://www.microsoft.com/JAPAN/developer/library …

http://www.microsoft.com/JAPAN/developer/library …
    • good
    • 0

Clipプロパティって言われても、オブジェクトがわからないと説明できません。


階層フレキシブルグリッド?ピクチャクリップ?

この回答への補足

階層フレキシブルグリッドだと思います。説明不足ですみません。

補足日時:2001/11/08 17:12
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Q宜しくお願い致します。

宜しくお願い致します。
access2000におきまして
そのVBAにより イベントプロシージャーを作成するに際しまして
フォーム1のコマンドボタン1 コマンドボタン2を
連続して クリックするというコードを作りたいのですが
Do command button1 みたいな コードを探していますが
そういうものは なにに 相当しますか
いちおう
たとえばコマンドボタン1のプロパティで
イベントで イベントプロシージャーを開くときの
コードをコピペして
同様にコマンドボタン2のプロパティで
イベントで イベントプロシージャーを開くときの
コードをコピペして
両者を ひとつのコードとして
いっしょに 書いて
実行するということは 分かるし
それで できるのですが
そういうコードを 結合させる やり方ではなくて
openform フォーム1
みたいに
*** コマンドボタン1
みたいな そういう 関数は
ありますか

宜しくお願い致します。

Aベストアンサー

#1ははずしていたようです。
本題は以下でしたね。

>フォーム1のコマンドボタン1 コマンドボタン2を
>連続して クリックするというコードを作りたいのですが

プロシージャの中で

Call コマンド1_Click
Call コマンド2_Click

と、続ければいいのでは。

QEXCELVBAスタンダードとACCESSVBAベーシックどちらが難し

EXCELVBAスタンダードとACCESSVBAベーシックどちらが難しい?
この間、EXCELVBAベーシックを取得しました。次に取得する順番ですが、EXCELVBAスタンダードとACCESSVBAベーシックどちらに挑戦したらよいでしょうか?やはり簡単なベーシックを先にやるべきでしょうか?

Aベストアンサー

そのスタンダードとかベーシックというのは、「VBAエキスパート」という括りの中の話だと思います。

逆説的な言い方になるのですが、Excel VBAエキスパートのスタンダードさえも、知識としては中途半端です。そういう資格を持っていても、その実態をよく知っている人なら、この人がプログラムを組めるとは思わないでしょう。その上のプロフェッショナルとなると、知識としてはあるとは思います。でも、プロフェッショナルというのは、クラスの設定とか出てきますが、VBAだけでは、さっぱり分からないのではないかと思います。

Excel VBAをなめている人は多いけれども、現実に、ExcelのVBAで本当に組めるというのは、VBAの積み上げ式では役に立たないのです。やはり、VBや他の言語のサイズダウンという考え方が正解ではないのかなって思います。しかし、知らない人からみれば、下手くそなスパゲティーコードでも、プロ級のコードでも、結果が同じなら、知らない人には優劣なんて分かりません。中には、VBAのコーディング・ルールなんてありません、と平気に私に反論する質問者もいるぐらいで、Excel VBAのユーザーとは有象無象です。VBAインストラクターでも、悪乗りも過ぎるという人間もいますからね。

ですから、知識としてみるなら、Access VBAベーシックを持っていれば、多少、見方が変わるとは思いますね。しかし、Access VBAの範囲というのは、非常に範囲は狭いような気がします。

#何のために?
うーん。

人に自慢するため(^^;
でも、この資格試験って、その程度しかないように思います。皮肉っぽくて悪いけれども、とにかく、豊富な経験に勝るものはありませんね。

そのスタンダードとかベーシックというのは、「VBAエキスパート」という括りの中の話だと思います。

逆説的な言い方になるのですが、Excel VBAエキスパートのスタンダードさえも、知識としては中途半端です。そういう資格を持っていても、その実態をよく知っている人なら、この人がプログラムを組めるとは思わないでしょう。その上のプロフェッショナルとなると、知識としてはあるとは思います。でも、プロフェッショナルというのは、クラスの設定とか出てきますが、VBAだけでは、さっぱり分からないのではない...続きを読む

QExcelVBAについて質問します、宜しくお願いします。

ExcelVBAについて質問します、宜しくお願いします。

UserForm にいろいろなコントロールが有るのですが。

「質問-1」
 ・下記の様なプログラムで、読んでくるコントロールの順番は何で決まるのですか?
 ・TabIndexで決まる様でもない様ですが。

For Each MyControl In Me.Controls
char = MyControl.Name
      ・・・・・・・
Next
「質問-2」
  LabelコントロールはTabIndexまたはTabStopは無効なのでしょうか?

Aベストアンサー

それなら、
 コンボボックスのオブジェクト名は「"Comb" + 連番」
 テキストボックスのオブジェクト名は「"Text" + 連番」
という風に規則を作っておいてこんなコードを書けば良いです。
無駄なコントロールをループで回さなくて済みますし。


Sub Test()
  Dim cnt As Integer
  
  'コンボボックスのチェック
  For cnt = 1 To 2
    With Me.Controls("Comb" & cnt)
      If .Value = "" Then
        .SetFocus
        MsgBox "未入力です。", vbExclamation + vbOKOnly
        Exit Sub
      End If
    End With
  Next
  
  'テキストボックスのチェック
  For cnt = 1 To 2
    With Me.Controls("Text" & cnt)
      If .Value = "" Then
        .SetFocus
        MsgBox "未入力です。", vbExclamation + vbOKOnly
        Exit Sub
      End If
    End With
  Next
  
  MsgBox "入力されていました。", vbInformation + vbOKOnly
End Sub

それなら、
 コンボボックスのオブジェクト名は「"Comb" + 連番」
 テキストボックスのオブジェクト名は「"Text" + 連番」
という風に規則を作っておいてこんなコードを書けば良いです。
無駄なコントロールをループで回さなくて済みますし。


Sub Test()
  Dim cnt As Integer
  
  'コンボボックスのチェック
  For cnt = 1 To 2
    With Me.Controls("Comb" & cnt)
      If .Value = "" Then
        .SetFocus
        MsgBox "未入力です。", vbExclamation + vbOKOn...続きを読む

QVB初心者なのでわかりづらい説明になってしまっていますが、宜しくお願い

VB初心者なのでわかりづらい説明になってしまっていますが、宜しくお願いいたします。

ソリューションに含まれる全クラスのメソッド一覧を取得したいと考えています。
考えている処理は以下の通りです。

For i As Integer = 1 To プロジェクト数
  For j As Integer = 1 To クラス数
    ' クラスオブジェクトの取得
    Dim typ As Type = GetType(プロジェクト名.クラス名) ※
    ' クラスが持つメソッドの取得
    Dim methods As MethodInfo() = typ.GetMethods()

    ' 出力処理

  Next
Next

ソリューションの例
Solution
  ├Project1
  │  ├Class1_1
  │  └Class1_2
  ├Project2
  │  ├Class2_1
  │  ├Class2_2
  │  └Class2_3
  └Project3
     └Class3_1

ただ、ソリューションに含まれるプロジェクトの数、プロジェクトに含まれるクラスの数
の取得方法とプロジェクトに含まれているクラス名の取得方法がわかりません。
よろしければ、教えていただけないでしょうか。
また、他に良い方法があれば教えていただけないでしょうか。
宜しくお願いいたします。

環境はVB2008です。

VB初心者なのでわかりづらい説明になってしまっていますが、宜しくお願いいたします。

ソリューションに含まれる全クラスのメソッド一覧を取得したいと考えています。
考えている処理は以下の通りです。

For i As Integer = 1 To プロジェクト数
  For j As Integer = 1 To クラス数
    ' クラスオブジェクトの取得
    Dim typ As Type = GetType(プロジェクト名.クラス名) ※
    ' クラスが持つメソッドの取得
    Dim methods As MethodInfo() = typ.GetMethods()

    ' 出力処理

...続きを読む

Aベストアンサー

For Each a As Assembly In AppDomain.CurrentDomain.GetAssemblies()
System.Diagnostics.Debug.WriteLine(a.FullName)
If a.GlobalAssemblyCache Then Continue For
For Each t As Type In a.GetTypes()
System.Diagnostics.Debug.WriteLine(t.FullName)
For Each m As MethodInfo In t.GetMethods()
System.Diagnostics.Debug.WriteLine(t.FullName + "." + m.Name)
Next
Next
Next

QCSVをVB(input)で読み込んだ場合に数値を文字列として読込みたい。

初めまして。個人的にVB6.0を勉強しています。教えてください。

【概要】
VBを使用し、CSVの読込(input #)→編集→TXTで出力(White #) する場合、inputの読込段階でデータが自動変換されてしまう。

【内容】
CSV(カンマ区切)のデータです。
(例)
シメイ,住所(都道府県),市街局番,番号
小林○○,千葉県○市○○,011,111-1111
佐藤○○,埼玉県○市○○,009,999-9999

input #で読込むと、市外局番の頭0(ゼロ)が省略され【11】や【9】と読込まれてしまう。
なんとか文字列として【011】や【009】と読込みたいです。

【奮闘記】
input #を使用し上記ファイルを+読込んでいます。
(line inputで読み込むと1列全てが結合された文字列となってしまうので、電話番号を結合するなど、編集ができなくなってしまうので)

input #として読込んだ段階で、数値として自動変換されてしまっているので、どうすればよいものなのか。。。
どんなアドバイスでも助かります!!よろしくお願いします。

初めまして。個人的にVB6.0を勉強しています。教えてください。

【概要】
VBを使用し、CSVの読込(input #)→編集→TXTで出力(White #) する場合、inputの読込段階でデータが自動変換されてしまう。

【内容】
CSV(カンマ区切)のデータです。
(例)
シメイ,住所(都道府県),市街局番,番号
小林○○,千葉県○市○○,011,111-1111
佐藤○○,埼玉県○市○○,009,999-9999

input #で読込むと、市外局番の頭0(ゼロ)が省略され【11】や【9】と読込まれてしまう。
なんとか文字列として【011...続きを読む

Aベストアンサー

こんにちは。

> input #として読込んだ段階で、数値として自動変換されてしまっている
ということですが、受け取り変数をString型にすれば
問題ないと思います。

Sub TEST()
Const cnsFILENAME = "D:\TEMP\TEST_DATA.csv"
Dim intFF As Integer
Dim X(1 To 4) As String
intFF = FreeFile
Open cnsFILENAME For Input As #intFF
Do Until EOF(intFF)
Input #intFF, X(1), X(2), X(3), X(4)
Debug.Print "(1)=" & X(1) & ", (2)=" & X(2) & _
", (3)=" & X(3) & ", (4)=" & X(4)
Loop
Close #intFF
End Sub

こんにちは。

> input #として読込んだ段階で、数値として自動変換されてしまっている
ということですが、受け取り変数をString型にすれば
問題ないと思います。

Sub TEST()
Const cnsFILENAME = "D:\TEMP\TEST_DATA.csv"
Dim intFF As Integer
Dim X(1 To 4) As String
intFF = FreeFile
Open cnsFILENAME For Input As #intFF
Do Until EOF(intFF)
Input #intFF, X(1), X(2), X(3), X(4)
Debug.Print "(1)=" & X(1) & ", (2)=" & X(2) & _
...続きを読む


人気Q&Aランキング

おすすめ情報