Excel 2010のスクロールバーが遠すぎます


2

私の問題は、以下のPrintScreenに示されています。

ここに画像の説明を入力してください

私はインターネットで多くの情報を検索しましたが、ほとんどすべてのソースが、シートの最後にある空の行を削除してドキュメントを保存すると言います。たとえば、それがここで提案されているものです(セクション2fを参照)。

これは時々機能しますが、ほとんどの場合機能しません!

これが関連情報であるかどうかはわかりませんが、Excelドキュメントには、コメントの書式設定に関係する2つを含む3つのユーザー定義マクロが含まれています。シート「Notes A」には多くのコメントがあり、そのほとんどは背景としての写真です。また、私のドキュメントは保護されていないので、問題は余分な行がロックされていることではないと思います。

これに対する決定的な解決策はありますか?

追加:ここに私の3つのマクロのコードがあります。

モジュール1:これは、単語の文字列をアルファベット順に並べ替えるマクロです。たとえば、HELLOを含むセルに適用すると、EHLLOが出力されます。

Option Compare Text
Function SortString(ByVal iRange, Optional Croissant As Boolean = True)
'Trevor Shuttleworth, mpep, modifié fs, mpfe
Dim i%, j%, sTemp$
For j = 1 To Len(iRange) - 1
 For i = 1 To Len(iRange) - 1
  If Mid(iRange, i, 1) > Mid(iRange, i + 1, 1) Then
   sTemp = Mid(iRange, i, 1)
   Mid(iRange, i, 1) = Mid(iRange, i + 1, 1)
   Mid(iRange, i + 1, 1) = sTemp
  End If
 Next
Next

If Croissant = False Then
 For i = Len(iRange) To 1 Step -1
  SortString = SortString & Mid(iRange, i, 1)
 Next
 Exit Function
End If

SortString = iRange

End Function

モジュール2:これは、単語を含むコメントのサイズを自動的に変更するマクロです。

Sub Fitrangecomments()
'Updateby20140325
Dim rng As Range
Dim WorkRng As Range
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each rng In WorkRng
    If Not rng.Comment Is Nothing Then
        rng.Comment.Shape.TextFrame.AutoSize = True
    End If
Next
End Sub

モジュール3:これは、作成するコメントの背景画像を選択するようにユーザーに求めるマクロであり、画像のサイズに合わせてコメントのサイズを自動的に変更します。

Sub InsertComment()

    Dim strImagePath As Variant
    Dim objImage As Object

    strImagePath = Application.GetOpenFilename("Picture, *.jpg; *.png; *.bmp")
    If strImagePath = False Then Exit Sub

    Set objImage = CreateObject("WIA.ImageFile")
    objImage.LoadFile strImagePath

    With ActiveCell
        If .Comment Is Nothing Then .AddComment ("")
        .Comment.Shape.Fill.UserPicture strImagePath
        .Comment.Shape.Height = objImage.Height * 0.75
        .Comment.Shape.Width = objImage.Width * 0.75
    End With

End Sub

あなたはおそらくあなた自身の問題を診断しました。ユーザー定義のマクロはおそらく空白であるため、指定したリンクでテクニックを使用してリセットします。これらのマクロを質問の一部として表示しない限り、誰も助けられません。
タイソン

@Tyson使用するマクロのコードを追加しました。
ゲスト

回答:


0

そのSortString関数をどの範囲で呼び出していますか?シート全体をループしている場合は、問題が説明されている可能性があります。名前付き範囲の使用を検討するか、「Count」関数を埋め込んで、移入された行でのみ実行されるようにします。

クロワッサンについて質問するつもりはありません...

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.