X



Excel総合相談所 136
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001名無しさん@そうだ選挙にいこう
垢版 |
2019/07/27(土) 17:47:29.09
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否

▼━関連スレ━━━━━━━━━━━━

前スレ
Excel総合相談所
https://find.5ch.net/search?q=excel

Excel VBA 質問スレ
https://find.5ch.net/search?q=excel+vba

【質問不可】Excel総合相談所スレの雑談・議論スレ
https://find.5ch.net/search?q=excel+%E3%80%80%E7%9B%B8%E8%AB%87%E6%89%80
0852847
垢版 |
2019/09/22(日) 20:53:36.28
すいません、自己解決しました
C列のやり方を参考に、株価の現在値の前後の固有の単語から何文字を抜き出す、
というやり方で出来ました
教えて頂いた方、ありがとうございました
0853名無しさん@そうだ選挙にいこう
垢版 |
2019/09/22(日) 23:08:26.90
ヘッダーに日付を入れたいのですが、このページ数の文字を大きくする(20くらい)
にはどう書けばよいでしょうか?

.LeftHeader = "&P/&N"
0858名無しさん@そうだ選挙にいこう
垢版 |
2019/09/23(月) 22:31:25.52
あるブックの「=A1&"aaa"」と入ったセルをvba で別ブックにcopyするとaaaと転記されてしまいます
=A1の部分も反映させるにはどうしたらいいでしょうか?
0860名無しさん@そうだ選挙にいこう
垢版 |
2019/09/24(火) 09:22:26.19
GI列の最終行の値を、下に向かってコピー
A列の最終行と同じ行までコピーするVBAをお願いします。


A GI
***.....**
***.....**
***.....**
***.....
***.....
***.....
***.....
***.....

↓↓↓↓↓↓↓↓

A GI
***.....**
***.....**
***.....**
***.....**
***.....**
***.....**
***.....**
***.....**
0861名無しさん@そうだ選挙にいこう
垢版 |
2019/09/24(火) 18:52:51.39
>>860
GI列の最終行の値を、下に向かってコピー
A列の最終行と同じ行までコピーする
dim cnt
cnt =[a10000].end(xlup).row-[GI10000].end(xlup).row
if cnt>1 then

[GI10000].end(xlup).offset(1).resize(cnt).value = _
[GI10000].end(xlup).value
end if
0863名無しさん@そうだ選挙にいこう
垢版 |
2019/09/24(火) 20:28:01.19
すでにIEのダウンロードダイアログが開いた状態で、VBAで任意のフォルダを選択して保存するにはどうしたらいいでしょうか?
0870名無しさん@そうだ選挙にいこう
垢版 |
2019/09/25(水) 00:30:04.73
>>868
名前をつけて保存のキャプションからウィンドウハンドル?を取得するところまではなんとなくわかったのですが、ファイル名の入力、保存ボタンの押下まで辿り着けません・・
0871名無しさん@そうだ選挙にいこう
垢版 |
2019/09/25(水) 07:16:52.23
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2013
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

セルを右クリックした時に出てくるミニツールバーに、Σや右より表示などのコマンドを
登録する方法は有るのでしょうか?
0873名無しさん@そうだ選挙にいこう
垢版 |
2019/09/25(水) 17:40:09.28
【1 OSの種類         .】 Windows*7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

参照範囲の中に日付と文字列と空欄が混在しており、エラーを吐いてしまいます。
E列とJ列は文字列でG列から日付などが混在しています。最新の日付だけを引っ張りたいです。
試しにG列を全て日付にしてみたら通ったので、文字列と空欄を置き換えなどでごまかす方法があったら教えて頂きたいです。
以下の式まで組みました。
{=MAX(('18〜'!E3:INDIRECT("'18〜'!E"&COUNTA('18〜'!A:A)+1)=C7)*('18〜'!J3:INDIRECT("'18〜'!J"&COUNTA('18〜'!A:A)+1)=H7)*'18〜'!G3:INDIRECT("'18〜'!G"&COUNTA('18〜'!A:A)+1))}
御回答よろしくお願いします。
0875名無しさん@そうだ選挙にいこう
垢版 |
2019/09/25(水) 20:27:20.95
>>870
SendMessageのWM_SETTEXTで文字を送るところまで行った?
その前のFindwindowExで子ハンドル探すあたり?
WM_SETTEXTとかBM_CLICKの正体(実はただの定数)がわからないとか?
0877名無しさん@そうだ選挙にいこう
垢版 |
2019/09/25(水) 22:01:42.77
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2013
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

AD列の最終行の1つ下の行から、1233行までを削除するVBAを教えてくださいm(_ _)m
0878名無しさん@そうだ選挙にいこう
垢版 |
2019/09/25(水) 22:36:13.94
>>877
range("ad1233", cells(cells(rows.count,"ad").end(xlup).row+1,"ad")).delete

細かい作業一つ一つ聞くよりマクロの自動登録使う方が手っ取り早いと思うんだが
0879873
垢版 |
2019/09/26(木) 08:01:43.58
>>876
出来ました!ありがとうございました!
0880名無しさん@そうだ選挙にいこう
垢版 |
2019/09/26(木) 12:21:36.18
public Declare Function MessageBox Lib "user32.dll" Alias "MessageBoxA" (ByVal hWnd As Long, ByVal lpText As String,ByVal uType As Long) As Long

'OKボタンを保有するフラグ
Public Const MB_OK = &H0

'最前面フラグ
Public Const MB_TOPMOST = &H40000

'呼び出し
Public Sub TestTopMostMsgBox()

Dim lpText As String
Dim lpCaption As String

lpText = "テスト"

MessageBox 0, lpText, lpCaption, MB_OK Or MB_TOPMOST

End Sub

これを実行すると必ずexcelが落ちるのですが何がいけないのでしょうか・・
0881名無しさん@そうだ選挙にいこう
垢版 |
2019/09/26(木) 12:42:50.45
>>880

public Declare Function MessageBox Lib "user32.dll" Alias "MessageBoxA" (ByVal hWnd As Long, ByVal lpText As String,ByVal uType As Long) As Long

Public Declare Function MessageBox Lib "user32.dll" Alias "MessageBoxA" ( _
ByVal hWnd As Long, _
ByVal lpText As String, _
ByVal lpCaption As String, _
ByVal uType As Long) As Long
0886名無しさん@そうだ選挙にいこう
垢版 |
2019/09/26(木) 23:35:54.18
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2019
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 不可

A1に日本って打ったらB1に東京と表示され
同じくA1にアメリカと入力したらB1にワシントン
ロシアならモスクワ、何も入力しない場合は空欄が
表示されるようにしたいんだけどやり方を教えて下さい
0889名無しさん@そうだ選挙にいこう
垢版 |
2019/09/27(金) 00:07:07.59
>>886
B1⇒ =IFERROR(INDEX(E:E,MATCH(A1,D:D,0)),"")
D1⇒ 日本
E1⇒ 東京
D2⇒ アメリカ
E2⇒ ワシントン
D3⇒ ロシア
E3⇒ モスクワ
0891886
垢版 |
2019/09/27(金) 00:47:06.84
ありがとうございます!
0893名無しさん@そうだ選挙にいこう
垢版 |
2019/09/27(金) 02:37:22.66
>>892
このハゲ!
一つじゃなくてもベストな方法は一つだ
0894名無しさん@そうだ選挙にいこう
垢版 |
2019/09/27(金) 04:27:11.38
絶対参照と複合参照、相対参照だったかな?
このあたりがわからん。
mosの資格をとりたい
0897名無しさん@そうだ選挙にいこう
垢版 |
2019/09/27(金) 14:57:51.39
>>894
出るものって結構決まってるから模試やればいける
やらないと無理かも
ただ本番の方が日本語が拙い時があって悩むw
問題数は模試のが多いな
0899名無しさん@そうだ選挙にいこう
垢版 |
2019/09/27(金) 23:09:48.44
>>894
絶対参照と相対参照は、超簡単。
まずはそれを理解して、複合参照を理解すれば大丈夫。
複合参照は実務だと、条件付き書式でよく使う。
0905名無しさん@そうだ選挙にいこう
垢版 |
2019/09/29(日) 14:31:22.49
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel1601192920300

先頭、末尾に移動するのにCtrl + Home、Ctrl + Endはわかっているのですが
ツールバーでありませんか?
0906名無しさん@そうだ選挙にいこう
垢版 |
2019/09/29(日) 15:40:04.53
sub ○○() は本来
(Public) sub ○○() が省略されてるもの
で合っていますか?

Cells(1, 1).Value = が Cells(1, 1) = でいけるのと同じで
0907名無しさん@そうだ選挙にいこう
垢版 |
2019/09/29(日) 15:47:04.66
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 不可

A1に
S15がAならB A以外は空欄

Bは別シートの別シートC12

と表示するにはどうしたらいいですか?
0913名無しさん@そうだ選挙にいこう
垢版 |
2019/09/29(日) 16:50:44.95
グラフをコピーして2個作って上下に並べればいいよ
片方の横メモリラベルは消せばいい
0914名無しさん@そうだ選挙にいこう
垢版 |
2019/09/29(日) 17:11:55.61
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 不可

A1
=IF(S12="日","",'計画 '!C12)
だと

で別シート'計画 '!C12が空欄の場合
A1が0になってしまいます

で別シート'計画 '!C12が空欄の場合
A1が空欄になるにはどのようにすれば良いですか?
0919名無しさん@そうだ選挙にいこう
垢版 |
2019/10/01(火) 06:15:16.28
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2010
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 可

・あるセルに数値を書き込む
・数値入力時点での日付、時刻を隣接セルに書く

というようなことをやっていて、日時入力の手間を減らしたい
イメージを作ってみたがこんな感じ
https://i.imgur.com/2HVxrLE.jpg
「ctrl+;」「ctrl+:」でもいいんだけどかなり頻繁に入力するからなるべく手間を減らしたいんだ
こういうのはVBAでやらなきゃ無理かな?
now関数とかは入力するたび変わっていっちゃうからうまい具合にやる方法が思いつかない
0920名無しさん@そうだ選挙にいこう
垢版 |
2019/10/01(火) 06:46:07.76
VBA使わないと無理です
0925名無しさん@そうだ選挙にいこう
垢版 |
2019/10/02(水) 19:02:50.04
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2016
【3 VBAが使えるか    .】 はい
【4 VBAでの回答の可否】 可

>>923の状態は、むしろどうやって作るのでしょうか?
0930925
垢版 |
2019/10/02(水) 20:13:35.05
>>926
ありがとうございました。
文字化けですか。
0931名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 04:42:21.67
最近よく見るけど、¥記号、〜記号、ハイフン、半角スペースなど一部の記号だけがなぜかユニコード文字になってるWEBサイトやデータがけっこうあって、コピペやエクスポートすると必ず文字化けするんだよなあ
スマホやタブレットからデータ入力すると、日本語入力エンジンのデフォルトの優先順位の関係でユニコードが選ばれてしまうらしいんだけど、修正の手間が増えて地味に困ってる
0932名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 14:04:37.95
G列の2行目以降でセルの値が1000であれば、その行を行ごと削除したくて
これを試したのですが、エラーになります

Columns("7").AutoFilter Field:=7, Criteria1:="=1000"
Range(Range("G2"), Range("G" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).EntireRow.Delete
Selection.AutoFilter


それと同じようにA列の2行目以降で"59″であれば行を削除するためにこれをつかいたいのですが
1行目がなくなり、AutoFilterが解除されないです。

Columns(1).AutoFilter Field:=1, Criteria1:="=59"
Range(Range("A2"), Range("A" & Rows.Count).End(xlUp)).SpecialCells(xlCellTypeVisible).EntireRow.Delete
Selection.

正しい書き方をおしえてください
0934名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 19:19:26.40
>>932
1行目からおかしいね
0935名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 19:40:50.85
>>932
オートフィルターに頼らない方が良い
あれは微妙に挙動がややこしい

Sub Macro1()
For i = Cells(Rows.Count, 7).End(xlUp).Row To 2 Step -1
If Cells(i, 7).Value = 1000 Then
Rows(i & ":" & i).Delete Shift:=xlUp
End If
Next
End Sub
0938名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 21:13:57.93
遅いなら配列に入れるとか。

Sub Macro1()
 tmp = Range("G1:G" & Cells(Rows.Count, 7).End(xlUp).Row).Value
 For i = Cells(Rows.Count, 7).End(xlUp).Row To 2 Step -1
  If tmp(i, 1) = 1000 Then
   Rows(i).Delete
  End If
 Next
End Sub
0943名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 22:40:18.33
マクロって結果をシートに代入させると遅くなるのかな
1列のみの50行の範囲、検索数18個(for〜)の条件で
合えば、セルに色を付ける作業でも目でわかる速さでポツン、ポツンって色が付く
0945名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 22:51:58.18
色が付いていく様子が見えると言うことは表示切ってないだろうから、
screenupdatingを切れば50行程度ならマシになるんじゃね
0946名無しさん@そうだ選挙にいこう
垢版 |
2019/10/03(木) 23:11:48.41
>>945
画面の切り替えはないから速度変化はないと思うけどscreenupdatingは別のマクロで使えそうなので感謝
0950名無しさん@そうだ選挙にいこう
垢版 |
2019/10/04(金) 08:15:58.98
>>948
Function 違うのがある()
  違うのがある = False
  For Each c In Range("A1:E10")
    If c.Value <> "" Then x = c.Value: Exit For
  Next
  For Each c In Range("A1:E10")
    If c.Value <> "" And c.Value <> x Then 違うのがある = True: Exit For
  Next
End Function
レス数が950を超えています。1000を超えると書き込みができなくなります。

ニューススポーツなんでも実況