end-u の回答履歴

全1157件中1121~1140件表示
  • エクセル「折り返して全体を表示」での折り返しの行数取得方法

    エクセル2000のVBAで質問します。 A1セルにVLOOKUP関数で文字列が表示されます。 セルの書式設定で「折り返して全体を表示する」にした場合、セル内で折り返されて全部で何行になっているのかを取得する方法はありますか?(VBAでも関数でも) 現在、セルの高さを3行分とっているのですが、関数で表示される文字列の長さによっては3行でおさまらない場合があり、何行になるかがわかれば行数に応じてフォントサイズを変更し、縮小して全体を表示させようと思っています。 当初、セルからはみ出るかどうかがわかれば出来るかと思い、 Sub test01() With Worksheets("Sheet1").Range("A1") h = .Height .Value = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" .WrapText = True .EntireRow.AutoFit h2 = .Height .EntireRow.RowHeight = h End With If h2 > h Then MsgBox "はみ出しちゃった!", , " \(≧▽≦)丿" End If End Sub というマクロを書いてみたのですが、行数がわからないと縮小する割合が求められないので質問いたしました。

  • EXCEL:マクロの登録ができない・・・

    EXCELのマクロをオブジェクトに登録する際に以下の問題が発生し、 マクロを登録することができません。 (1)複数のマクロを含んだファイル(ファイルの保存場所は会社の LAN上で個人のPCではありません)を開き、その際マクロは「有効」 にして開きます。 (2)開いたら、既に作成してあるマクロを、シート内にあるオブジェクトに登録します。 ここまでは問題ないのですが、 (3)マクロの登録後、そのオブジェクトをクリックする(=マクロを実行する)と、「セキュリティの警告」がでてきて、再度マクロを有効 にするかどうかたずねてきます。 (4)(3)で再度マクロを「有効」にすると、「ファイルは使用中です」 となってしまいます。((3)でマクロを実行した際、まさに使用して いるのと同じファイルを開こうとするのですからだと思うのですが。) 以上が現在発生している問題です。 上記(3)でマクロを登録したオブジェクトをクリックした際、 「セキュリティの警告」がでないようにする方法をご存知のかた がいらっしゃればおしえていただけると助かります!

  • CSVの読み込み処理について

    こんばんわです。 エクセルのVBAをつかってCSV形式のファイルデーターを読み込みように某サイトを参考に作成しました。 確かに読み込む事が出来たのですが、数値も文字列扱いになってしまいます。 数値処理する方法があるのでしょうか? Sub CSV_Read2() Dim FileType, Prompt As String Dim FileNamePath As Variant Dim textline, csvline() As String Dim Rowcnt, ColumNum As Integer Dim ch1 As Long FileType = "CSV ファイル (*.csv),*.csv" Prompt = "CSV File を選択してください" '操作したいファイルのパスを取得します FileNamePath = SelectFileNamePath(FileType, Prompt) If FileNamePath = False Then 'キャンセルボタンが押された End End If '空いているファイル番号を取得します ch1 = FreeFile 'FileNamePath のファイルをオープンします Open FileNamePath For Input As #ch1 'エラーが発生したらファイルを閉じます 'CSVのファイルは1行の項目数が正確に合っていないと読めないのですが、 '色々なCSVがあるようなので入れておきます On Error GoTo CloseFile '表の行番号の初期化 1行目から読み込んだデータを入力します Rowcnt = 1 Do While Not EOF(ch1) 'ファイルの終端かどうかを確認します。 '1行読み込みます Line Input #ch1, textline 'ダブルクォーテーションを削除します 'カンマ+ダブルクォーテーションで区切られている CSV ファイルなどは '適時追加してください textline = Replace(textline, """", "") 'カンマで分離します csvline() = Split(textline, ",") '配列渡しでセルに代入 Range(Cells(Rowcnt, 1), Cells(Rowcnt, UBound(csvline()) + 1)) = csvline() Rowcnt = Rowcnt + 1 Loop CloseFile: 'ファイルを閉じます Close #ch1 End Sub Function SelectFileNamePath(FileType, Prompt) As Variant SelectFileNamePath = Application.GetOpenFilename(FileType, , Prompt) End Function Function GetItemNum(FileNamePath) As Integer Dim ch1 As Long Dim textline As String '空いているファイル番号を取得します ch1 = FreeFile 'FileNamePath のファイルをオープンします Open FileNamePath For Input As #ch1 Line Input #ch1, textline '1行だけ読み込みます。 Close #ch1 GetItemNum = 1 '1行中のカンマの数を数えます Do GetItemNum = GetItemNum + 1 textline = Mid(textline, InStr(textline, ",") + 1) Loop Until InStr(textline, ",") = 0 End Function

    • ベストアンサー
    • noname#63196
    • Visual Basic
    • 回答数4
  • エクセル・ワードのツールバー内のデータ が表示されない

    エクセル・ワードのツールバー内の「データ」だけ が表示されないのですがどう設定したら解決できるでしょうか。 アドバイスよろしくお願いします。

  • エクセル・ワードのツールバー内のデータ が表示されない

    エクセル・ワードのツールバー内の「データ」だけ が表示されないのですがどう設定したら解決できるでしょうか。 アドバイスよろしくお願いします。

  • excel vba データ取得中に、インターネット一時ファイル領域オーバー

    excel vba webクエリでデータ取得中に、インターネット一時ファイルがいっぱいになります。 特にIE7以降は、1024MBまでなので、困っています。 1:IE7で一時ファイル領域を1024MB以上にを上げる方法 2:webクエリで一時ファイルへキャッシュしない方法 3:IEではなく、FireFox等の設定できる方法 そのた、何か画期的な方法、ご存知の方いらっしゃいましたら、ご教授お願いいたします。

  • excel2007のマクロ貼り付けボタン

    excel2007のマクロ貼り付けボタンはリボンの中から何を選択して作るのか教えてください。

  • For Nextマクロの高速化についてご教示ください。

    エクセル2000です。 以下は、ワークシートのA列の2行目以降に赤(Interior.ColorIndex = 3 )のセルがあればその行を非表示に、1行目のA列以降に赤いセルがあればその列を非表示にする単純なマクロです。通常はストレスなく動いてくれるのですが、あるBOOKにこのマクロを設定したら、わずか200行程度の処理に1分以上かかってしまいました。 そのBOOKは1.4MBあるのでそのせいとも思えるのですが、それにしても時間がかかりすぎるような気もします。 高速化する方法がありましたらご教示くださいませ。 (o。_。)oペコッ Private Sub 行列非表示() Application.Calculation = xlCalculationManual Application.ScreenUpdating = False With ActiveSheet x = .Cells(1, 1).SpecialCells(xlLastCell).Row y = .Cells(1, 1).SpecialCells(xlLastCell).Column For i = 2 To x If .Cells(i, "A").Interior.ColorIndex = 3 Then .Rows(i).Hidden = True End If Application.StatusBar = i Next i For n = 1 To y If .Cells(1, n).Interior.ColorIndex = 3 Then .Columns(n).Hidden = True End If Application.StatusBar = n Next n End With Application.StatusBar = "" Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True Exit Sub End Sub

  • For Nextマクロの高速化についてご教示ください。

    エクセル2000です。 以下は、ワークシートのA列の2行目以降に赤(Interior.ColorIndex = 3 )のセルがあればその行を非表示に、1行目のA列以降に赤いセルがあればその列を非表示にする単純なマクロです。通常はストレスなく動いてくれるのですが、あるBOOKにこのマクロを設定したら、わずか200行程度の処理に1分以上かかってしまいました。 そのBOOKは1.4MBあるのでそのせいとも思えるのですが、それにしても時間がかかりすぎるような気もします。 高速化する方法がありましたらご教示くださいませ。 (o。_。)oペコッ Private Sub 行列非表示() Application.Calculation = xlCalculationManual Application.ScreenUpdating = False With ActiveSheet x = .Cells(1, 1).SpecialCells(xlLastCell).Row y = .Cells(1, 1).SpecialCells(xlLastCell).Column For i = 2 To x If .Cells(i, "A").Interior.ColorIndex = 3 Then .Rows(i).Hidden = True End If Application.StatusBar = i Next i For n = 1 To y If .Cells(1, n).Interior.ColorIndex = 3 Then .Columns(n).Hidden = True End If Application.StatusBar = n Next n End With Application.StatusBar = "" Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True Exit Sub End Sub

  • VBAを使ったエクセルでの画像複数表示

    VBA初心者です。エクセルで商品カタログを作るため、品番に紐付いた商品画像ファイルをエクセル上に読み込む方法は他の回答から分かったのですが(http://oshiete1.goo.ne.jp/qa2880877.html)、見る限り「1シート=1商品」というものしか見つけられませんでした。同シート上に2つ以上の「品番⇒画像」という表示をするためのVBAはどのように組めばよろしいでしょうか? VBAもよく勉強しないで恐縮ですが、どなたかご回答いただけますでしょうか?宜しくお願い致します。

  • VBAを使ったエクセルでの画像複数表示

    VBA初心者です。エクセルで商品カタログを作るため、品番に紐付いた商品画像ファイルをエクセル上に読み込む方法は他の回答から分かったのですが(http://oshiete1.goo.ne.jp/qa2880877.html)、見る限り「1シート=1商品」というものしか見つけられませんでした。同シート上に2つ以上の「品番⇒画像」という表示をするためのVBAはどのように組めばよろしいでしょうか? VBAもよく勉強しないで恐縮ですが、どなたかご回答いただけますでしょうか?宜しくお願い致します。

  • VBAを使ったエクセルでの画像複数表示

    VBA初心者です。エクセルで商品カタログを作るため、品番に紐付いた商品画像ファイルをエクセル上に読み込む方法は他の回答から分かったのですが(http://oshiete1.goo.ne.jp/qa2880877.html)、見る限り「1シート=1商品」というものしか見つけられませんでした。同シート上に2つ以上の「品番⇒画像」という表示をするためのVBAはどのように組めばよろしいでしょうか? VBAもよく勉強しないで恐縮ですが、どなたかご回答いただけますでしょうか?宜しくお願い致します。

  • Excelのハイパーリンクを効率的に…

    Excelのハイパーリンクに関しての質問なんですが、 同じ位置関係のハイパーリンクを一挙に作成することは出来るのでしょうか? 例えば、[Sheet1/A1]⇒[Sheet2/D1]というハイパーリンクを張ったとします。 次に[Sheet1/A2]⇒[Sheet2/D2]というハイパーリンクを張り、 続けて[Sheet1/A3]⇒[Sheet2/D3]のハイパーリンク、そして [Sheet1/A4]⇒[Sheet2/D4] [Sheet1/A5]⇒[Sheet2/D5] [Sheet1/A6]⇒[Sheet2/D6]…… というふうにハイパーリンクをず~っと張っていきたい場合 その作業をまとめてと言いますか、効率的に進めていく方法ってあるのでしょうか? 分からないので教えて下さい。よろしくお願い致します。

  • ExcelVBA:オートフィルタをかけたシート上でのセル内の値参照について

    オートフィルタをかけた状態で、セル内の値を参照しても、オートフィルタがかかってないセル(隠れているセル)の値を参照してしまいます。 例えば、ある条件でオートフィルタをかけて、行が1,2、6,7、8・・・となって、3,4,5行が非表示になっているのにもかかわらず、 Range("A1").Offset(0, 2).Value を参照すると、6行目の値ではなくて、非表示の3行目の値を拾ってきてしまいます。 このように、オートフィルタをかけたシート上で値を参照する際に、非表示行を無視して行数取りし、値を参照したいのですが、何か方法はありますでしょうか? 上の例ですと、6行目のセルを3行目として扱いたいわけです。 どなたか、ご教授くださいませ。 よろしくお願い致します。

  • エクセルVBAについて

    最近、いろいろな質問をしています。今度はエクセルVBA(Excel2003)に関する質問です。 最近、在庫管理を任せられるようになり在庫管理表をエクセルで作成しています。わが社に何日に荷物が入荷し、何日に取引先に納入した、などの表です。その中で、すでに条件付書式が3つ作成済みなのですが、新たに1つ追加する必要が出てきました。 J:弊社納期予定日 K:客先納入日 L:客先納品・・・Kに日付が入ると、「済み」と表示される M:弊社コメント用 O:弊社入庫数 P:弊社納入日 Q:弊社独自の設定 R:弊社独自の設定 S:Jの日付より遅れた場合、「遅延」と表示 条件付書式は、 条件1=AND((TODAY()+3)>$K***,ISBLANK($P***)) →Kが客先納入日で、Pが弊社納品日、遅れたらセルの色を黄にしてフォントを赤にする設定 条件2=AND(MOD(ROW(),2)=0,NOT(AND((TODAY()-5)>$K***,ISBLANK($P***)))) →1行おきにセルの色を緑にする、もしくはPの弊社納入日が遅れていない場合。フォントはデフォルトの黒 条件3=AND(MOD(ROW(),2)=0,NOT(ISBLANK($P***))) →1行おきにセルの色を白にする、もしくはPの弊社納入日が遅れていない場合。フォントは茶。 これに、今回追記事項として、 T列に、弊社からの請求書が「未発行」となった場合、セルの色がライトブルー、フォントが青になるよう設定します。 自分なりに、マクロを組んで、 Private Sub Worksheet_Change(ByVal ActiveCells As Excel.Range) Select Case ActiveCells '内容を比較 Case "未発行" r = ActiveCells.Row Rows(r).Interior.ColorIndex = 20 '塗りつぶしをライトブルー ActiveCells.Font.ColorIndex = 5 '文字色を青 Case "発行済み" r = ActiveCells.Row Rows(r).Interior.ColorIndex = xlNone ActiveCells.Font.ColorIndex = 1 Case "未請求" r = ActiveCells.Row Rows(r).Interior.ColorIndex = xlNone ActiveCells.Font.ColorIndex = 1 Case "" r = ActiveCells.Row Rows(r).Interior.ColorIndex = xlNone Case Else End Select End Sub としました。 そうすると、条件3に合致する行は、上記のマクロが実行されるのですが、条件1,2のときは、上記マクロが実行されません。 条件付き書式とマクロの併用は不可能でしょうか? それとも条件が4つ以上ある場合は、マクロで組むべきなのでしょうか? 希望としては、条件付書式を活かしつつ、マクロも実行させたい。 無理であれば、全部マクロで組みなおしたい。 もし、何か良い方法をご存知の方がいらっしゃいましたら、是非ご教授の程宜しくお願い致します。

  • エクセルのピポットテーブル内の並び替え

     エクセルで体育祭の予算を作成中です。種目順に作成した元データを用いて、業者毎の発注書を作成したいと考えています。発注書では、単に合計金額のみではなく、種目名や順位などを記入した明細をつける必要があります。  元データから、ピポットテーブルを用いて、業者毎の明細を作成するところまではできたのですが、種目毎に順位がばらばらに並び替えられてしまいます。どうしたら順位順にうまく並べることができるのか、教えていただきたいと思います。 イメージ (元データ)  種目 順位 単価 個数 小計 発注先             (1) 1位  600 10  6000  A社            2位  500 10  5000  A社            3位  400 10  4000  A社          (2) 1位  600 10  6000  B社            2位  500 10  5000  B社            3位  400 10  4000  B社         (集計後-現在)発注先 種目 順位 単価 個数 小計          A社  (1)  1位 600  10 6000                 3位 400  10 4000                 2位 500  10 5000            ↓             (集計後-理想)発注先 種目 順位 単価 個数 小計          A社  (1)  1位 600  10 6000                 2位 400  10 4000                 3位 500  10 5000

  • ExcelVBA Findメソッドで検索のスタート位置について

    おせわになっております。 Findメソッドを用いて、先頭から順に値を検索しようとしています。 Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) ↑ このような方法で、該当するものを一つ一つ探そうとしています。 つまり、仮に一列目で見つかったら、次は二列目以降から探そうと しています。 FindNextなどを使用しないのは、連続で求めるためではなく、 ボタンを押したときに一つずつ検索するからです。 しかし、この書式ではスタート地点にした、次のセルから検索する はずが、スタート地点に指定したセルから検索してしまい、 何度行っても同じセルばかりを検索して返してしまいます。 Offsetなどで一行ずつずらしても、同じ場所からしか検索が 始まりません。 これはなぜなのでしょうか? 念のため、他のメソッドなどでは決してrngSearch は代入等の 操作はしておりません。 ちなみに、同じメソッドの中で同じ書式を繰り返すと   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   … うまくいくようなのです。一度でもメソッドを抜けるとうまくいか なくなるような感じです。 以上、わかりづらい説明で大変申し訳ありませんが、なにとぞお願い 致します。

  • エクセル Webクエリの動作が不安定

    エクセルVBAで為替データーを取得する為のプログラムを作成中です。 数年分の為替データーを取得する為のプログラムなのですが、データーを取得できる時と出来ないときがあります。 何回か9年分のデーターを取り込むことに成功しているのですが、実行時エラーが出て全くプログラムが使えなくなるときがあります。 プログラムに何の変更も加えず、次の日に、プログラムを走らせると動作する。一度うまくいったので立て続けに、動作させると、今度は動作しないという具合で、プログラム作成が進みません。 だめなときには、データー→外部データーの取り込み→新しいWebクエリと手動でもデーターが取り込めなくなっています。 原因がどこにあるか分からず困っています。 OSは 2000XP、エクセルは2003です。 データーはYahooファイナンスです。 URLの中に使えない文字がある記述がヘルプをたどっていったらありましたが(?など)、これが原因でしょうか?でも何度かは成功しています。 念不具合の原因を調べる方法を教えていただけるとありがたいのですが。

  • ExcelVBA Findメソッドで検索のスタート位置について

    おせわになっております。 Findメソッドを用いて、先頭から順に値を検索しようとしています。 Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) ↑ このような方法で、該当するものを一つ一つ探そうとしています。 つまり、仮に一列目で見つかったら、次は二列目以降から探そうと しています。 FindNextなどを使用しないのは、連続で求めるためではなく、 ボタンを押したときに一つずつ検索するからです。 しかし、この書式ではスタート地点にした、次のセルから検索する はずが、スタート地点に指定したセルから検索してしまい、 何度行っても同じセルばかりを検索して返してしまいます。 Offsetなどで一行ずつずらしても、同じ場所からしか検索が 始まりません。 これはなぜなのでしょうか? 念のため、他のメソッドなどでは決してrngSearch は代入等の 操作はしておりません。 ちなみに、同じメソッドの中で同じ書式を繰り返すと   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   Set rngSearch = rngList.Find("ゴルフ", rngSearch, , xlPart) MsgBox rngSearch.Value   … うまくいくようなのです。一度でもメソッドを抜けるとうまくいか なくなるような感じです。 以上、わかりづらい説明で大変申し訳ありませんが、なにとぞお願い 致します。

  • VBA(重回帰分析)

    以下のプログラムが動かないのですがなぜでしょうか? Sub Macro2() Application.Run "ATPVBAEN.XLAM!Regress", _ Worksheets("aaa").Range("$A$1:$A$5"), _ Worksheets("aaa").Range("$B$1:$C$5"), True, False, , _ Worksheets("bbb").Range("$A$1"), False, False, False, False, , False End Sub 具体的には、シート「aaa」のA1~A5を説明変数、B1~C5を被説明変数として、重回帰分析の結果を「bbb」のA1に表示させようとしているのですが、うまくいきません。 ちなみにexcel2007を使っています。