2016-09-09 10 views
0

新しい行を「作成者」(挿入者)のユーザー名を挿入します。私はG.マクロを使用して新しい行を挿入するときにユーザー名を挿入します。

欄に入力したユーザー名を欲しい

私は現在持って、次の行を挿入するマクロ:あなたはちょうどこのように、ユーザ名に挿入された行と列セットGを追跡する必要が

Sub Insert_Row() 
Dim rActive As Range 

Set rActive = ActiveCell 

Application.ScreenUpdating = False 

With Cells(Rows.Count, "H").End(xlUp) 
    .EntireRow.Copy 
    With .Offset(1, 0).EntireRow 
     .PasteSpecial xlPasteFormats 
     .PasteSpecial xlPasteFormulas 
     On Error Resume Next 
      .SpecialCells(xlCellTypeConstants).ClearContents 
     On Error GoTo 0 
    End With 
End With 

rActive.Select 

Application.CutCopyMode = False 
Application.ScreenUpdating = True 

End Sub 
+0

だから何が問題なのですか?ユーザーは問題ではありません、 'Environ(" Username ")'。 –

+0

誰がエントリを作成したかを示すために、新しい行の列Gにユーザー名を挿入したいと考えています。私はEnviron( "Username")を組み込む必要があることを知っていますが、挿入行アクションに基づいてこれをどうやって行うのですか? – mhaverk

答えて

1

を:

Sub Insert_Row() 
Dim rActive As Range 
Dim insertRow As Long 
Set rActive = ActiveCell 
Application.ScreenUpdating = False 

With Cells(Rows.Count, "H").End(xlUp) 
    insertRow = .Row + 1 
    .EntireRow.Copy 
    With .Offset(1, 0).EntireRow 
     .PasteSpecial xlPasteFormats 
     .PasteSpecial xlPasteFormulas 
     On Error Resume Next 
      .SpecialCells(xlCellTypeConstants).ClearContents 
     On Error GoTo 0 
    End With 
End With 
Cells(insertRow, "G").Value = Environ("Username") 
rActive.Select 

Application.CutCopyMode = False 
Application.ScreenUpdating = True 

End Sub 
+0

パーフェクト!どうもありがとうございました。 – mhaverk

関連する問題