kybo の回答履歴
- マクロコードの変更
以下のサンプルコードをネットでみつけました。 "D$7"セルに入れた文字と同じ文字を見つけてセルを移動させてくれるコードだと思いますが 私のエクセル表はD7セルに6桁の数字(111101)を入れますが 検索先は'111101とシングルコーテーションが入っています。 サンプルコードのD7セルのところをどのように変更したらいいでしょうか。 Private Sub Worksheet_Change(ByVal Target As Range) Dim myR As Range If Target.Address <> "$D$7" Then Exit Sub If Target.Value = "" Then Exit Sub Set myR = Cells.Find(What:=Target.Value, _ After:=ActiveCell, LookIn:=xlFormulas, LookAt _ :=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:=True) If myR.Address = Target.Address Then MsgBox "同じ値はありません" Else myR.Activate End If End Sub どうぞよろしくおねがいします。
- ベストアンサー
- Excel(エクセル)
- s-hi-yo
- 回答数2
- マクロコードの変更
以下のサンプルコードをネットでみつけました。 "D$7"セルに入れた文字と同じ文字を見つけてセルを移動させてくれるコードだと思いますが 私のエクセル表はD7セルに6桁の数字(111101)を入れますが 検索先は'111101とシングルコーテーションが入っています。 サンプルコードのD7セルのところをどのように変更したらいいでしょうか。 Private Sub Worksheet_Change(ByVal Target As Range) Dim myR As Range If Target.Address <> "$D$7" Then Exit Sub If Target.Value = "" Then Exit Sub Set myR = Cells.Find(What:=Target.Value, _ After:=ActiveCell, LookIn:=xlFormulas, LookAt _ :=xlWhole, SearchOrder:=xlByRows, _ SearchDirection:=xlNext, MatchCase:=True) If myR.Address = Target.Address Then MsgBox "同じ値はありません" Else myR.Activate End If End Sub どうぞよろしくおねがいします。
- ベストアンサー
- Excel(エクセル)
- s-hi-yo
- 回答数2
- エクセル 数式
次のような場合の数式を教えてください。 例 ある行のセルを、すべて入力した数字から マイナス12,345をした数字が 表示されるように設定したいです。 つまり 25,000と入力するだけで12,655と 表示するようにしたいです。(12,655=25,000-12,345) その為の数式を教えてください。 よろしくおねがいします。
- ベストアンサー
- Excel(エクセル)
- mirehyagi
- 回答数4
- ASC変換した~は置換できない?
excel2010 ~をASC変換した~の文字は検索、置換できません。 match関数で~が入った文字列参照しようとして参照できませんでした。 これはexcelの仕様と思われますが、他にも検索できない文字ってあるのでしょうか?
- ベストアンサー
- Excel(エクセル)
- 3620313
- 回答数2
- Excelの画像をセルとして参照する
Excelでセルに画像を割り当て、他のシートで参照することはできますか。 例えば、「基本データ」のシートに名前、住所、電話、顔写真などのデータの入った名簿があり、「名前・写真一覧」シートで名前と顔写真を参照するというイメージです。 つくりたいのは単純な名簿ですので、オートフィルで入力できるだけでよいのですが、「基本データ」シートの名前や写真が変更されたときに「名前・写真一覧」シートにも反映されるようにしたいのです。 何か方法がありましたらよろしくお願いいたします。
- 締切済み
- Excel(エクセル)
- mrkw1204
- 回答数2
- Excel描画ツールでのフォント固定
Excel2013を使っています。 描画ツールを使っているときに四角の枠の中に文字を入れたいと思っています。 枠を拡大すると、それに伴って文字も拡大されるのですが、そうならないように設定することはできますか。 いくつかの枠を用いて、文字列の配置を動かしたりそろえたりしたいのですが、枠の中の文字数が異なるとき、それに合わせて枠を拡大すると文字も大きくなってしまいます。 例えば、「1.時間について」「2.調査の内容について」など入力された枠の位置をそろえたいのですが、文字数が異なるので、枠を大きくするとこれらの文字の大きさが変わってしまいます。 文字に陰影をつけたりもしたいので、描画ツールで編集したいと思います。 筆ぐるめで、これと同じように住所氏名などそれぞれフォントを固定して使用したことがありますが、そのようなことをしたいのです。 初心者で内容がずれているところもあるかもしれませんが、よろしくお願いいたします。
- ベストアンサー
- Excel(エクセル)
- mrkw1204
- 回答数2
- エクセル2010 値の検索と貼り付け
エクセル2010を使っています。 画像の様な Sheet2 があり、A列にたくさん文字が入力されています。 その中から、イニシャルテスト の文字を探し、該当セルのT列に Sheet3のT1~CD25を貼り付けたいと思います。 行数は10万行ほどありますので、負担の掛からない形で貼り付けできればと思います。 イニシャルテストの文字がA1に有れば、Sheet3のT1~CD25を Sheet2のT1に貼り付ける。 A27にも有りますので、Sheet3のT1~CD25をT27にも貼り付けます。 やりたいのは以上です、詳しい方、よろしくお願い致します。
- ベストアンサー
- Excel(エクセル)
- gekikaraou
- 回答数2
- 範囲選択した内容と見出しをメール
こんな事って出来ますでしょうか? エクセル2013 マクロを使用して下記のような事は出来ますでしょうか? 4行目 A~N列に見出しがあります。 例えば 5行目A~Nを範囲選択して下記 AA3 または AD3宛にメールを送信します。 To: AA3 (メアド入力済) 件名:AB3 (定型文入力済) 本文:AC3 (定型文入力済) Cc: AD3 (メアド入力済) その時、受信側には 上記 AC3と 4行目A~N列の見出しと範囲選択した内容が 箇条書きの様にメール内容として送られてくるような事は出来ますでしょうか? 複数行、範囲選択した場合は受信側が見やすいように 改行等を設けて 見出し と 範囲選択した各行の内容ごと、メールに反映することは出来ますでしょうか? または5行目以降のC列のいずれかのセルを選択すると 4行目A~N列見出しと選択行のA~Nを メールで送信は可能でしょうか? 宜しくお願い致します。
- ベストアンサー
- Excel(エクセル)
- maron1010
- 回答数1
- Excel2010の『開発』タブを出すには
excel2010では、『開発』タブは初めの段階から表示されていませんが、所定の方法を行えば、開発タブを常時表示することができます。 そこで、私も下記のサイトを参考に、 [リボンのユーザー設定]欄の「開発」チェックボックスをOnにして[OK]を押しました。 http://www.relief.jp/itnote/archives/003623.php しかし、開発タブは表示されません。 一応、Alt+F11でVBEの起動の起動はできるのですが、何回やっても[開発タブ]の表示はできませんでした。 使っているofficeは、Microsoft office Home and Student2010です。 また、OSはWindows7 SP1です。 よろしくお願いします。
- 締切済み
- Excel(エクセル)
- agino123
- 回答数1
- OFFSET関数の使い方
EXCELで、文字が入った行を別のワークシートで参照したいのですが、 =OFFSET(Sheet5!$C$1,0,0) として、 その下の行は =OFFSET(Sheet5!$C$1,1,0) さらにその下は =OFFSET(Sheet5!$C$1,2,0) さらにその下は =OFFSET(Sheet5!$C$1,3,0) というふうに数字を1つずつ増やしたのですが、セルをコピーしてマウスで下にドラッグしても 連続して数字が増えていきません。 =OFFSET(Sheet5!$C$1,この部分,0) →ここの部分の数字を1つずつ増やして いくにはどうしたらいいのでしょうか?
- ベストアンサー
- Excel(エクセル)
- kevinsan
- 回答数5
- シートを選択したい vba
自身のファイルを読み取り専用で新たに立ち上げて、シートを選択したいのですが Private Sub cmd_読み取り専用で開く_Click() Dim xlApp As Object Dim xlBook As Object Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open(ActiveWorkbook.FullName) xlApp.Visible = True xlApp.xlBook.Sheets("メイン").Select Set xlApp = Nothing Set xlBook = Nothing End Sub だと xlApp.xlBook.Sheets("メイン").Selectでエラーになります。 文法が間違ってると思うのですが、修正案をご教授ください。
- ベストアンサー
- Excel(エクセル)
- ixfzqyrdte
- 回答数4
- VBA エラー
Sub 上下カット1() Dim MyR As Range, MyMax As Integer, MyMin As Integer Dim MX As Range, MN As Range With ActiveSheet MyMax = WorksheetFunction.Max(.Range("D15:P15")) MyMin = WorksheetFunction.Min(.Range("D15:P15")) For Each MyR In .Range("D15:P15") If MyR.Value = MyMax Then Set MX = MyR If MyR.Value = MyMin Then Set MN = MyR Next MX.Borders(xlDiagonalUp).LineStyle = xlContinuous MN.Borders(xlDiagonalUp).LineStyle = xlContinuous End With With ActiveSheet MyMax = WorksheetFunction.Max(.Range("D16:P16")) MyMin = WorksheetFunction.Min(.Range("D16:P16")) For Each MyR In .Range("D16:P16") If MyR.Value = MyMax Then Set MX = MyR If MyR.Value = MyMin Then Set MN = MyR Next MX.Borders(xlDiagonalUp).LineStyle = xlContinuous MN.Borders(xlDiagonalUp).LineStyle = xlContinuous End With End Sub を実行すると、 MX.Borders(xlDiagonalUp).LineStyle = xlContinuous の部分にエラーがでます。 対処方法を教えてください。
- ベストアンサー
- Excel(エクセル)
- nakeko
- 回答数3
- 違うシートのデータを1つのPDFファイル保存VBA
Sub データPDFファイル化() If MsgBox("ファイルをPDF化し過去データとして保存します。よろしいでしょうか?", vbYesNo) = vbNo Then End End If If Range("L2").Value <> "" Then Dim Fn As String Fn = Format(Range("L2"), "yyyy年m月d日") & ".pdf" ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="D:\フォルダB\過去記録データ保存用フォルダ\データ\" & Fn Else MsgBox "セルL2にファイル名が入力されていません。", vbExclamation End If End Sub この様なコードがあります。エクセル2003では使用出来ないのでエクセル2007以降の使用です。 これはシート名「A」にコマンドボタンを設置し、そのコマンドボタンを押すとPDF化して保存するマクロです。 そこで質問ですがコマンドボタンを押すとシート名「A」と隣にあるシート名「B」をまとめてPDFファイルで保存する方法はどの様にすれば良いのでしょうか? PDF化した際は1ページ目がシート名「A」で2ページ目がシート名「B」を表示させ、名前はシート名「A」のL2(yyyy年m月d日)で保存します。
- ベストアンサー
- Excel(エクセル)
- noname#247334
- 回答数1
- マクロの中でマクロを実行中に中止させたい
マクロの中で別のマクロを実行して、それをループさせてます 中のマクロで問題があったとき外のマクロ自体を停止させるのはどうすればいいのですか? Sub A() Do Application.Run "I" Application.Run "II" Loop End Sub ここから マクロIの途中で何らかの条件が合えば、 マクロAを終了するにはどうすれば良いのですか?
- ベストアンサー
- Excel(エクセル)
- 48946
- 回答数2
- Excelでの条件つき書式の張り付けについて
Excel2007にて、1シート全体に、条件つき書式の設定をしました。 (シート内で値がAのときはセルの背景を緑にする、などの条件) シート内のセルをコピーし、同シート内に張り付けたところ、 張り付け部分のみ範囲指定された、 セル全体に設定した内容と同じ条件が作成されてしまい、 張り付けをすればするほど条件が増えて、 ファイル容量がどんどん大きくなってしまいます。 条件は増やさず、コピーしたセルの内容だけを張り付けることは できないのでしょうか。 上手く設定できず恐縮ですが、どうぞ知恵をお貸しください。
- ベストアンサー
- Excel(エクセル)
- hoge-chan
- 回答数1
- 【ExcelVBA】英数記号の半角変換
こんにちは。 Excel2013を使用しています。 カタカナは全角、英数記号は半角で表示を統一したく、ネットで検索したサンプルコードを範囲や条件等を変更して下記コードを作成しました。 (サンプルコードが記載されていたページに簡易な例で全ての場合に対応できていないとの但し書きがありました。) 下記コードを実行すると、記号のうち、括弧、中点については半角表示になりますが、#については全角表示のままです。 Mid(rData, i, 1) Like "#" の Like を = に変更して、Mid(rData, i, 1) = "#" とすると、#についても半角表示になりました。 “全ての場合に対応できていない”に該当するものなのかもしれませんが、Like では希望する結果を得られない理由は何なのか気になり、質問させていただきました。 よろしくお願いします。 -------------------------------------------------- Sub test() Dim c As Range Dim i As Integer Dim rData As Variant, ansData As Variant For Each c In Range(Cells(3, "D"), Cells(Cells(Rows.Count, "D").End(xlUp).Row, "D")) ansData = "" For i = 1 To Len(c.Value) rData = StrConv(c.Value, vbWide) If Mid(rData, i, 1) Like "[A-z]" Or Mid(rData, i, 1) Like "[0-9]" _ Or Mid(rData, i, 1) Like "(" Or Mid(rData, i, 1) Like ")" _ Or Mid(rData, i, 1) Like "・" Or Mid(rData, i, 1) Like "#" Then ansData = ansData & StrConv(Mid(rData, i, 1), vbNarrow) Else ansData = ansData & Mid(rData, i, 1) End If Next i c.Value = ansData Next c End Sub
- ベストアンサー
- Excel(エクセル)
- rx-z5815
- 回答数4
- マクロの実行に時間がかかってしまう
Excel2013です。 E列に従業員名、F列に部署名が入る表でVBAで従業員名が入力されると該当する部署名が表示されるようにしたく以下のようにコード(まだ一人分のIFステートです)を書いたのですが、すごく時間がかかってしまいます。 はじめは、実行にボタン登録したくなかったのでchangeイベントで実行するようにしたのですが、何度やってもExcelが落ちてしまい、今はボタンにマクロを登録させています。落ちることはなくなったのですが、ずっと砂時計です。 勤怠記録なので数十名分(一人二行)で365日の表になるので最終行は2万近くです。 Sub 部署名判断() Dim a As Long Application.ScreenUpdating = False For a = 1 To 16000 '部署名判断 If Cells(a, 5).Value = "従業員A" Then Cells(a, 6) = "総務課" End If Next a Application.ScreenUpdating = True End Sub どういったコードの書き方をすればいいのでしょうか? アドバイス願います。
- 締切済み
- Excel(エクセル)
- oimoita
- 回答数2
- Excel VBAで変数が定義されていません。
このシートコードで「変数が定義されていません。」となります。どうすればいいでしょうか。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Select Case Target.Address Case "$C$10:$C$13" SendKeys "%{DOWN}" Case "$H$10:$H$13" SendKeys "%{DOWN}" Case Else Exit Sub End Select Cancel = True End Sub
- ベストアンサー
- Excel(エクセル)
- mzakom
- 回答数1
- 文字を入力したセル以降のセルも同じ文字になるVBA
Private Sub Worksheet_Change(ByVal Target As Range) Dim R As Range ActiveSheet.Protect UserInterfaceOnly:=True Set R = Union(Range("D5:D38"), Range("E5:E38"), Range("T5:T38")) With Target If Intersect(.Cells, R) Is Nothing Then Exit Sub Application.EnableEvents = False Range(Cells(.Row, .Column), Cells(38, .Column)).Value = .Value Application.EnableEvents = True End With End Sub この様なコードがあるのですが範囲を変更したいと思います。 D5:D38は上記コードのままで良いのですが、E5;E38はE5:E36に、T5:T38はT5:T36に変更するにはどうすれば良いのでしょうか?
- ベストアンサー
- Excel(エクセル)
- noname#247334
- 回答数2
- 連続で印刷 VBA エクセル
・シート1のA列に番号が入力されており、B列以降に情報が入力されています。 ・シート2のA1セルに上記に番号を入力すると、B列以降の情報がフォーマットにあわせて表示する様になっています。 ・印刷する場合、A列に番号を入力→印刷を繰り返します。 ○コレをVBAで自動化できないでしょうか?
- ベストアンサー
- Excel(エクセル)
- yuu1236
- 回答数2