テキストファイルの中味を全部読み込んで、テキストボックスに表示するというコードをOpenステートメントを使って書いています。

その際、1つの種類のデータを1つのテキストファィルとして書き出し&読み込み
しているのですが、これですと種類が増えていくとともにテキストファイルの
数もどんどん増えてしまい効率が悪いです。

で、それらを1つのテキストファイルにまとめておいて、中をセクションに
区切って、それを読み込み&書き出しする方法はあるのでしょうか?

データが1行ですと分かるのですが、それぞれが長いテキストデータを1つの
テキストファイルに区切って書き出し&読み込みする方法が分かりません。

どなたか教えてください!!!!!!!
よろしくお願いします。

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

A 回答 (6件)

例えば、セクションの区切りについて、次のようなルールにしたとします。



行頭に[SectionXXX]という文字列がある事。
XXXはセクションを表す3桁の数字
この場合は、000から999まで有効ですね。

順番に取得する場合は、数字の手前までの文字列を比較して、ループを回せば、数字がいくつであっても全部取り込めます。

特定のセクションを指定して取り出す場合は、予めどこかでその数字(これは文字列として格納する)を指定する変数にぶち込んで、ループの中で更に比較して、該当する物だけを取り出せばよいと。
この場合、比較する文字列は、
"[Section" & strNum
みたいな感じになりますね。

この変数には、例えばテキストボックスにセクションNoを入力するようにしておいて、この値があったらこの変数にいれるとか、そんな風にすれば、よさげです。

どうでしょうか?

この回答への補足

回答ありがとうございます。う~ん、正直難解ですねぇ。
IfとLoopを組み合わせるというところがどうも・・・。

勉強が足りなくてすみません。
本を読みながら試行錯誤してみます。

補足日時:2002/03/07 22:11
    • good
    • 0

正直目的とあうかどうか分かりませんが、INIファイルを使用するのもひとつの選択肢だと思います。


INIファイルだと、APIを使用すれば、比較的楽に属性をテキストファイルに保存することができますよ。
    • good
    • 0

申し訳ありません。


呼び捨ててしまいました。
ごめんなさい...

この回答への補足

いえいえどういたしまして。

みなさんのご意見を参考にして、私なりに考えてみました。
同じセクションの行頭に特定の文字を挿入しました。


[Section1]デ-タ1デ-タ1デ-タ1デ-タ1デ-タ1
[Section1]デ-タ1デ-タ1デ-タ1
[Section1]デ-タ1デ-タ1

[Section2]デ-タ2デ-タ2デ-タ2デ-タ2
[Section2]デ-タ2デ-タ2

[Section3]デ-タ3デ-タ3デ-タ3デ-タ3デ-タ3
[Section3]デ-タ3デ-タ3デ-タ3デ-タ3デ-タ3デ-タ3
[Section3]デ-タ3デ-タ3デ-タ3デ-タ3デ-タ3デ-タ3

で、例えば[Section2]の文字列だけを抜き出してテキストボックスに表示
するコードを下のようにしてみました。

Dim aa, readdata, bb As String
Open App.Path & "\" & "test.txt" For Input As #1
Do Until EOF(1)
Line Input #1, aa
bb = Left(aa, 6)
If bb = "[Section2]" Then
readdata = readdata & aa & vbCrLf
End If
Loop
Close #1
Text1.Text = readdata

こんな感じでどうでしょうか?
多分もっと効率のいいコードがあるかも知れませんが、へっぽこの私には
これが限界です。

補足日時:2002/03/08 23:21
    • good
    • 0

fujiyama2002と同じく文字列の連結でデータを取得しています。


自分はセクションの数が限られている為、一度配列にセットし
後から再度取りこむ形を取っています。
数が決められない場合はyou-mさんがおっしゃる様に、
先頭より順読みし、ループとIF文で取得すれば・・・
と思います。

                          以上
    • good
    • 0

you-mさんと同様に自分も区切り文字


[Excel]や[Access]といった括弧書きで
区別しております。

この回答への補足

セクションの区切りを入れておいて読み込むという考え方は理解できるのですが、
どうすればいいのかが分かりません。

例えば、

[section 1]
データ1データ1データ1データ1データ1データ1
データ1データ1データ1データ1データ1データ1
データ1データ1データ1データ1データ1データ1
データ1データ1データ1データ1データ1データ1

[section 2]
データ2データ2データ2データ2データ2データ2
データ2データ2データ2データ2データ2データ2
データ2データ2データ2データ2データ2データ2

というテキストファイルがあったとして、[section 1]の部分の読み込みは

Open App.Path & "\test.txt" For Input As #1
Do Until data = "[section 2]"
Line Input #1, data
alldata = alldata & data & vbCrlf
Loop
Close #1
aaa = Replace(alldata, "[section 2]", "")
bbb = Replace(aaa, "[section 1]", "")
text1.text = bbb

    (初心者なので変なコードですが・・・)

というふうに、次にくるセクションの頭までを指定して読み込めば良いと思う
のですが、[section 2]の部分だけを読み込みたい時のコードが全く分かりません。
上記のやり方では、先頭のセクションだけを読み込むことは可能ですが、
以降のセクションだけを抜き出すのはできません。
ここが今ひとつ理解できないところです。

初心者なもので、へっぽこですみません。
どうか教えてください!!!
お願いいたします。

補足日時:2002/03/07 20:17
    • good
    • 0

やり方というか、やり方自体自分で決めれば済む事だと思いますよ。



例えば、セクションの区切りの行には、行頭に(本文で使われないような)特定のパターンを入れておいて、読み込むときには、一つのセクションを読み出すのに、そのパターンを判定するループにすればいいでしょう。
同様に書き出す場合も、一つのセクションを書き込んだら、そのパターンを含んだ区切りをいれるとか。

どうでしょうか?

この回答への補足

回答いただき、ありがとうございます。
現在、ninja972さんに質問させていただいた内容で悩んでいます。
ご助言を!!!!!!!

補足日時:2002/03/07 20:20
    • good
    • 0

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人が検索しているワード

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

Q数字がメインのフォントの一覧表示

使用OSはWindows7 Ultimateです。

フォント管理に「SAKURA 2.66」を使っているのですが、このソフトはフォントの一覧を表示させるとフォントの名前が其のフォントの形で表示されるようになっています。

ゴシックや古印体などのフォントではそれでいいのですが、数字の形が一番肝心なフォント、、例えば MOSuujiHD-JFn.otf などのMOSuujiシリーズはアルファベットなし・日本語はどれも同形で、数字の形だけが違うようです。

このようなフォントではフォント名で一覧を作られても意味がありません。

フォントによっては数字の形の違いを一覧にしてくれるフォント管理ソフトをご存じの方、教えてください。
何卒よろしくお願い致します。

Aベストアンサー

私も『フォントインストーラー SAKURA』を利用しています。
数字フォントであってもプレビュー画面に数字を表示できますよ。
デフォルトではフォント名になっていますが、プレビュー画面上のプルダウンメニューから[0123456789]を選択すると表示されます。
また、任意の文字を入力後[Enter]キーを押すと、任意の文字で表示できます。

Q【Access2003】VBAでタブ区切りテキストファイル読込

はじめまして。
【Access2003】を使用し、タブ区切りのテキストファイル読込をVBAで行っています。
カンマ区切りはわかるのですが、タブ区切りの方法がわからないので教えていただけませんか?

TransferTextを使用したかったのですが、読み込んだデータ1件1件に対して必須と桁数確認を行い、エラーがあった場合はテキストファイルにそのデータ1行を書き込み、エラーがない場合は1行テーブルに書き込みというように処理を分けたいからなのです。
とりあえず今のところカンマ区切りのCSVファイルを読み込むというようにしており、読み込む前にタブ区切りテキストファイルをカンマ区切りCSVファイルに変換する処理を入れようと思っています。
しかしタブ区切りテキストファイルをそのまま読むことができれば一番いいのですが。
ソースは以下の通りです。

'出力元CSVファイルを開く
lngFileNum = FreeFile()
'データ読込
Open strJsnFol & "\\" & strIriInf For Input As #lngFileNum
'CSVファイルの最初の行を読み込む
'CSVファイルより1件分を読み込み
Line Input #lngFileNum, strData
'カンマで区切って配列に代入
varData = Split(strData, ",", , vbTextCompare)
'データ種別のチェック
If varData(0) <> "XXX" Then
MsgBox "ファイルエラーです。", vbInformation + vbOKOnly
intErrFlg = 1
Exit Sub
End If
'タイムスタンプチェック
strSQL = " SELECT CREATE_TIME FROM TB WHERE    CREATE_TIME = '" & varData(1) & "'"
'SQLを実行
If DBAC.ExecSelect(strSQL) = 0 Then
'同じ処理時間のデータがなければ、タイムスタンプを取得
strCreateTime = varData(1)
Else
MsgBox "すでに処理済です。", vbInformation + vbOKOnly
intErrFlg = 1
Exit Sub
End If

'テーブルを開く
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("IF_TB")
'CSVファイルの全レコードを読み込むループ
Do Until EOF(lngFileNum)
'CSVファイルより1件分を読み込み
Line Input #lngFileNum, strData
'カンマで区切って配列に代入
varData = Split(strData, ",", , vbTextCompare)

'データチェック
If varData(0) = "" Or Len(varData(0)) > 12 Then
intChkErr = 1
End If
If varData(1) = "" Or Len(varData(1)) > 12 Then
intChkErr = 1
End If
If Len(varData(2)) > 1 Then
intChkErr = 1
End If
'エラーがあればエラーファイルに書き込み
If intChkErr <> 0 Then
strFileName = strJsnFol & "\\" & "ERR.csv"
lngFileNum2 = FreeFile()
Open strFileName For Append As #lngFileNum2
End If
Print #lngFileNum2, "ERR1," & strData
Close #lngFileNum2
Else
'各フィールドデータをテーブルに追加
With rst
.AddNew
!K_NO = varData(0)
!S_NO = varData(1)
!CD = varData(2)
!CREATE_TIME = strCreateTime
.Update
End With
End If
intChkErr = 0
Loop
rst.Close
Close #lngFileNum
Exit Sub

何かいい方法があれば教えていただけませんか?
よろしくお願いいたします。

はじめまして。
【Access2003】を使用し、タブ区切りのテキストファイル読込をVBAで行っています。
カンマ区切りはわかるのですが、タブ区切りの方法がわからないので教えていただけませんか?

TransferTextを使用したかったのですが、読み込んだデータ1件1件に対して必須と桁数確認を行い、エラーがあった場合はテキストファイルにそのデータ1行を書き込み、エラーがない場合は1行テーブルに書き込みというように処理を分けたいからなのです。
とりあえず今のところカンマ区切りのCSVファイルを読み込むと...続きを読む

Aベストアンサー

>'カンマで区切って配列に代入
>varData = Split(strData, ",", , vbTextCompare)
ここを変えればいいってことではない?

varData = Split(strData, vbTab, , vbTextCompare)

Qスーパーのチラシなどで使われている数字フォント

スーパーのチラシなどで使われている数字フォントで数字が1/3ほど重なっているフォントをよくみかけます。
白フチがあり、重なっている部分はフチにより区別がしやすくなっているフォントです。
あの数字フォントはなんという名前でしょうか?
単純に数字に白フチをつけ、文字幅を狭めただけでは白フチが一番外側だけになり、うまくいきませんでした。
文字を個別にうち、白フチを付け、重ねれば作成できるのですが、手間がかかりすぎ断念してしまいました。
数字フォントの名称、もしくは『こうすればできる』などのアドバイスがありましたらよろしくお願い致します。

Aベストアンサー

貴方が使ってるソフトが判りません??
数字フォントの名称←これは判りません?
『こうすればできる』←イラストレーターで作るなら。
最初は面倒ですが、サンプルを作ってからだとそこそこ早く出来ます。
文字ツールで0~9までの数字を書きます(仮に、特太ゴシック、大きさ50mm、文字間隔200))>黒矢印(選択ツール)をクリック>右クリック>アウトライン>塗り赤・線白・線幅20pt>アピアランスパレットの中の塗りをクリック&ドラッグで線の上に移動>長方形ツールで数字の右に四角を描きます(高さ45mm。幅30mm、塗りなし、線なし)>画面(表示)>アウトライン>四角をクリックして、ShiftとAltを押したまま直右に移動して離す>Ctrlを押したままでDを8回押す>全部を選択>整列パレットの垂直方向をクリック>数字だけを選択>右クリック>グループ解除>0と四角の一つを黒矢印で選択>そのまま0だけをクリック>整列パレットの水平方向をクリック>右クリック>グループ>これを0~9まで繰り返して、数字の周りに四角の有る数字を10個作る>画面(表示)>プレビュー>0を上にして、縦方向に0~9を並べる>全部を選択>0だけをクリック>整列パレットの水平方向をクリック>整列パレットの等間隔の垂直方向をクリック>クリック&ドラッグで全体をShiftとAltを押したまま直右に移動して離す>Ctrlを押したままでDを必要な桁数に成るまで押す(仮に3回)>一旦、保存>仮に値段を、23405とすると、一番左の行から各行の数字を一つずつ23405と選択>クリック&ドラッグでAltを押したまま別の場所に移動して離す>アクションパレットの右上の三角をクリック>新規アクション>名前を入れる>記録>整列パレットの等間隔の数値をー10mmにする>そのまま2だけをクリック>整列パレットの垂直方向をクリック>等間隔の水平方向をクリック>アクションパレットの下の黒四角をクリック>これで重なった、23405が出来ます。
別の数字を作る場合。
同じ様に左から右に数字を選択、仮に、66280>クリック&ドラッグでAltを押したまま別の場所に移動して離す>そのまま一番左の数字の6だけをクリック>アクションパレットの一番上の名前をクリック(反転する)>アクションパレットの下の右向き三角をクリック、で23405と同じ様に66280が重なります。
値段の中に1が入る場合は後で微調整するか、1の周りの四角の幅を最初に作った段階で狭くしてから数字をコピーします。

貴方が使ってるソフトが判りません??
数字フォントの名称←これは判りません?
『こうすればできる』←イラストレーターで作るなら。
最初は面倒ですが、サンプルを作ってからだとそこそこ早く出来ます。
文字ツールで0~9までの数字を書きます(仮に、特太ゴシック、大きさ50mm、文字間隔200))>黒矢印(選択ツール)をクリック>右クリック>アウトライン>塗り赤・線白・線幅20pt>アピアランスパレットの中の塗りをクリック&ドラッグで線の上に移動>長方形ツールで数字の右に四角を描き...続きを読む

Qテキストファイルの読み込みとリストボックスへの反映

VB初心者です。VB2008を使用しています。
2のリストボックス(listbox1,listbox2)があり、
listbox1には("1","2")、listbox2には("A","B")という値がはいっています。

このデータをテキストファイル(test.txt)に次のように保存します
[listbox1]
1
2
[listbox2]
A
B

ここまでは出来ました。

そこで質問です。
保存したこれらの値をそれぞれのリストボックスに読み込ませたいのですが、
どのようにすればよいでしょうか。
実行ファイルとテキストファイルは同じフォルダ(c:\testprogram)に入っています。

うまく伝えられませんがよろしくお願い致します。

Aベストアンサー

>保存したこれらの値をそれぞれのリストボックスに読み込ませたいのですが、
>どのようにすればよいでしょうか。

2つのリストボックスのアイテムを1つのファイルとして保存しているのですね。

方法は多々ありますので、コードを書く前に、
メモ書きで構いませんので、どうしたいか(どうするか)の順番を書いてみるのが理解しやすいと思います。
もちろん、コードを書きながら考えてもOKですけど。


私が良く使う方法は、

取りあえず、全データを読み込む(配列を使用)
配列から必要なデータを抜き出してリストボックスに入れる

という感じかな。

保存コードが出来たのですから、
読み出しのコードも出来るはずです。


[listbox1]
1
2
[listbox2]
A
B

保存したデータが上記の構成なら、
[listbox]の文字を比較または検索して、
どちらのリストボックスに代入するか判断する事になります。

まぁ、順番に記録されているのであれば、
[listbox2]でなければ[listbox1]に代入となります。
ただし、[listbox]の文字をリストボックスに代入しない様にする必要があります。

コードは書きませんので、勉強がてら悩んで見て下さい。
苦労した事は絶対忘れません。

>保存したこれらの値をそれぞれのリストボックスに読み込ませたいのですが、
>どのようにすればよいでしょうか。

2つのリストボックスのアイテムを1つのファイルとして保存しているのですね。

方法は多々ありますので、コードを書く前に、
メモ書きで構いませんので、どうしたいか(どうするか)の順番を書いてみるのが理解しやすいと思います。
もちろん、コードを書きながら考えてもOKですけど。


私が良く使う方法は、

取りあえず、全データを読み込む(配列を使用)
配列から必要なデータを抜き出し...続きを読む

Q小数点以下の数字だけ小さいフォントで表示

教えて下さい
エクセルで少数点以下の桁、2まで表示するのですが
小数点以下の数字だけフォントを小さくして、小数点以下の数字だと言う事を分かりやすくしたいのですが方法はございますか?

例:  100.11を入力すると11だけ自動でフォントが小さくなる事です

どうぞよろしくお願い致します

Aベストアンサー

エクセルのセルのデータは数値と文字列に大別され、書式などの適用に差があります。
文字列であればその文字列の1部だけフォント書式を変えることが出来ます(VBAではCharactersを使う。
http://www.big.or.jp/~seto/vbaref/vbaref3.htm
手作業では、数式バー部で一部の文字を範囲指定して書式設定するが、質問者はやったことがあるかな)
ーー
しかし数値では、それをやると一瞬それが実現しているらしく見えるが、均一フォントサイズにもどる。
推定では、エクセルは
キーボード上では実現ー>チェックすると内容は数値ばかりー>数値に強制変化ー>数値は均一フォント(という決まり)
という過程で、元に戻るのだと思います。
ーー
マイクロソフトがその気になれば出来ないことはないと思うが、素の必要性を重視してないー採用してないということだと思います。
(そういう他の事項は、どちらかというと初心者から、沢山質問が出ます)今までの質問でも、ワードの下つき文字の質問はあっても、本件のようなのはないと記憶する。
ーーー
だから文字列で考えるか、なんだが、そのままでは計算がやりづらいので候補外でしょう。
あきらめてください。
ーー
私のお遊び
B1=11,123
B1の書式 ユーザー定義 #,###
C1に=MOD(B1,1)
C1のフィントサイズ8
C1の書式ーセルー配置ー水平は左づめ、縦は下詰め
枠線が邪魔だが。

エクセルのセルのデータは数値と文字列に大別され、書式などの適用に差があります。
文字列であればその文字列の1部だけフォント書式を変えることが出来ます(VBAではCharactersを使う。
http://www.big.or.jp/~seto/vbaref/vbaref3.htm
手作業では、数式バー部で一部の文字を範囲指定して書式設定するが、質問者はやったことがあるかな)
ーー
しかし数値では、それをやると一瞬それが実現しているらしく見えるが、均一フォントサイズにもどる。
推定では、エクセルは
キーボード上では実現ー>チェック...続きを読む

Q行数の多いテキストデータから、任意の部分のみを読み込むには?

以下について、どなたかアドバイスをお願いします。
1.行数の多いテキストデータ(拡張子:prn)があります。この中の一部をExcel VBAでエクセルシートに貼付る事が目的です。
2.行いたいことののフローとしては、下記の様なデータprnファイルがあり、

  :
  :
*** 節点データ
節点    X-座標    Y-座標    Z-座標
番号    (m)    (m)    (m)
101    0.0   0.0   0.0
105    4.0    0.0    0.0
201    0.0    0.0    0.0
205    4.0   0.0    2.0

*** 部材データ
  :
  :

  (1)エクセルで「開く」→「**.prn」を選択
  (2)「カンマやタブなどの区切り文字によってフィールドごとに区切られたデータ」を選択
  (3)「タブ」と「スペース」を選択して「完了」
    (ここまでで、各数値を一つ一つのセルに入力したい)
  (4)開いたファイルの中で“ある文字から、ある文字”までを目的のシートに貼付る
    (***節点データ から ***部材データの上までをコピー)
  といった内容です。
3.自分ではマクロの記録を使って作成してみたのですが、「行数の多い」というのがネックとなり、シートの65536行までにデータが収まりきらないのです。
4.一度、シートに貼付けせずに、テキストファイルから直接必要な部分のみを読みこむ等の方法がありませんでしょうか。
5.なお、このテキストファイルのデータは、固定長では無いです。

内容がややこしいかもしれませんが、宜しくお願いします。

以下について、どなたかアドバイスをお願いします。
1.行数の多いテキストデータ(拡張子:prn)があります。この中の一部をExcel VBAでエクセルシートに貼付る事が目的です。
2.行いたいことののフローとしては、下記の様なデータprnファイルがあり、

  :
  :
*** 節点データ
節点    X-座標    Y-座標    Z-座標
番号    (m)    (m)    (m)
101    0.0   0.0   0.0
105  ...続きを読む

Aベストアンサー

こうなります。

Sub Main()

Dim sRecord As String
Dim vValues As Variant
Dim bIsTarget As Boolean
Dim y As Long
Dim x As Long
Close 'デバッグ用
Open "c:\test.txt" For Input As #1

While Not EOF(1)
Line Input #1, sRecord

'最初の3文字が***だったら
If Mid(sRecord, 1, 3) = "***" Then
'対象範囲か判定
If sRecord Like "*節点データ*" Then
bIsTarget = True
Else
bIsTarget = False
End If
Else
'対象範囲だったら
If bIsTarget Then
y = y + 1
'Tab区切りで分割して、vValues配列に格納。
vValues = Split(sRecord, vbTab)
'レコードが空じゃなかったら(空だと右辺=-1)
If LBound(vValues) = 0 Then
For i = LBound(vValues) To UBound(vValues)
Cells(y, i + 1) = vValues(i)
Next
End If
End If
End If
Wend
Close #1

End Sub

こうなります。

Sub Main()

Dim sRecord As String
Dim vValues As Variant
Dim bIsTarget As Boolean
Dim y As Long
Dim x As Long
Close 'デバッグ用
Open "c:\test.txt" For Input As #1

While Not EOF(1)
Line Input #1, sRecord

'最初の3文字が***だったら
If Mid(sRecord, 1, 3) = "***" Then
'対象範囲か判定
If sRecord Like "*節点データ*" Then
bIsTarget = True...続きを読む

Q通販のオーダーシートに使用される数字フォント

カウネットやセシールなどの通販のオーダーシートの上のほうに記入見本として書かれている数字のフォント名をご存知でしたら教えてください。私はマイクロソフトオフィスを使用しています。

例えば、1は頭がとがっていないただの棒。こんな感じ→|。
4は三角形ではなく、頭が離れていて、右と左の縦線が平行。
(分かりにくい説明でごめんなさい。)

他の質問で検索をしたところ、OCR-AでもBでもなく、Cells Fontというフォントに近いことがわかったのですが、Cells Fontというのは、セルズ社が独自で作成したフォントのようで、セルズ社の会計ソフトなどを持っていないとダウンロードできないようです。オフィスに搭載されるメジャーなフォント、もしくはフリーダウンロードできるフォントでCells Fontに似た数字が使用できるフォントはあるのでしょうか?

Aベストアンサー

 お探しなのは「OCR-HN」というフォントと思われます。
 フォント名で検索すれば購入できるところが見つかると思いますが,手ごろなところとしてはリコーが「HG OCR-HN」(2,500 円)として扱っています。
  http://font.ricoh.co.jp/purchase/font/
上掲ページのいちばん下に項目と見本へのリンクが掲載されていますので,ご覧の上,購入をご検討なさるとよいでしょう。

QVBAでテキストファイルからデータを読み込む方法

VBAでテキストファイルからデータを読み込む方法を探しています。
コンマ区切りのデータを、エクセルに書き込みたいです。
テキストファイルにはコンマ区切りで6個のデータを書き込んであります。
それを、セルD3からD7に書き込む方法を教えていただきたいです。よろしくお願いします。

Aベストアンサー

お世話になります。

D3 ~ D7 って 5 個しかセルがないのですが...。
いいんでしょうか。

とりあえず、こんな感じでしょうか。
Private Sub CommandButton1_Click()
  Dim inputeds() As String
  Dim inputed As String
  Dim fileNo As Integer
  
  fileNo = FreeFile()
  Open "c:\test.csv" For Input As #fileNo
  Line Input #fileNo, inputed
  Close #fileNo
  inputeds = Split(inputed, ",", -1)
  
  Dim i As Integer
  For i = 3 To 7
    Dim rng As Range
    Set rng = Sheet1.Range("D" & CStr(i))
    rng.Value = inputeds(i - 3)
    Set rng = Nothing
  Next i
End Sub

お世話になります。

D3 ~ D7 って 5 個しかセルがないのですが...。
いいんでしょうか。

とりあえず、こんな感じでしょうか。
Private Sub CommandButton1_Click()
  Dim inputeds() As String
  Dim inputed As String
  Dim fileNo As Integer
  
  fileNo = FreeFile()
  Open "c:\test.csv" For Input As #fileNo
  Line Input #fileNo, inputed
  Close #fileNo
  inputeds = Split(inputed, ",", -1)
  
  Dim i As Integer
  For i = 3 To 7
    Dim rn...続きを読む

Qリストの数字のフォントサイズを変えたい

リストを使ったときに頭につく数字のフォントサイズを小さくすることは
できるのでしょうか?
文章のフォントは<li>の後にフォントタグをつければ小さくなるのですが
リストの数字が小さく出来ません。
これを小さくすることは可能でしょうか?
<ol>
<li>
<li>
</ol>

Aベストアンサー

スタイルシートを使えばできます。
たとえば、

<ol style="font-size:80%;">
<li>サンプル</li>
</ol>

のように記述すると元のサイズの 80% になります。

QVB2008 INIファイル読み込みについて

先日、VB6のソースを、アップグレードツールを使用しVB2008(無料版を使用)にコンバートしました。

そしてコンバート後、表示されているエラーとワーニングを全て取り、起動してみたのですが、特に変えた記憶のない設定ファイル読み込みの処理で失敗するようになり、起動しなくなりました。

デバッグ実行にて調べていくとどうやら、「GetPrivateProfileString」に対する引数にて、ファイル名(パス込み)を指定しているのですが、このファイル名の後半部分が一部削除されているようです。
(削除されている文字数は、どうやら、ファイルパスに含まれる全角文字列と同数のようでした。)

何が原因で起こっており、どうすれば直るのでしょうか・・・。
ネット上で調べてみたのですが、原因と直し方がイマイチ解らなくて、こちらで質問させていただきました。
どうか、ご教授いただけないでしょうか。<(_ _*)>

(動作環境:Windows7 32bit版
       Visual Studio2008 無料版)

Aベストアンサー

VB6から.NETに焼き直すときにはよくある話です……。
.NETでは文字列はUnicodeで管理されているため、
ANSIで文字列を扱うAPIをそのまま呼び出すと引数の内容が壊れたりします。

こちらのリンクを参考になさってください。
http://www5b.biglobe.ne.jp/~yone-ken/VBNET/special/sp06_GetPrivateProfileString.html


人気Q&Aランキング

おすすめ情報