diff --git a/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.html b/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.html
index 51c57b0..1286116 100644
--- a/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.html
+++ b/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.html
@@ -40,6 +40,9 @@
     <ng-template #graphContent>
         <app-resources-overview [resourcesData]="value"></app-resources-overview>
     </ng-template>
+    <button type="button" class="btn btn-primary" (click)="editVIM()" placement="top" container="body" ngbTooltip="{{'EDIT' | translate}}">
+        <i class="fa fa-edit icons"></i>
+    </button>
     <button type="button" class="btn btn-primary" placement="left" container="body"
         [ngbPopover]="graphContent" triggers="manual" #chart="ngbPopover"
         (click)="chart.open()" [autoClose]="'outside'" [popoverTitle]="graphTitle" popoverClass="resources-chart-popover"
diff --git a/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.ts b/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.ts
index e3657ad..14862eb 100644
--- a/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.ts
+++ b/src/app/utilities/vim-accounts-action/VimAccountsActionComponent.ts
@@ -46,7 +46,7 @@
     public injector: Injector;
 
     /** To show Instances running @public */
-    public showMapIcon: boolean =  false;
+    public showMapIcon: boolean = false;
 
     /** To show Details Instances running @public */
     public showInstanceDetails: {}[];
@@ -77,7 +77,7 @@
     /** Delete VIM Account @public */
     public deleteVIMAccount(): void {
         // eslint-disable-next-line security/detect-non-literal-fs-filename
-        const modalRef: NgbModalRef = this.modalService.open(DeleteComponent, {backdrop: 'static'});
+        const modalRef: NgbModalRef = this.modalService.open(DeleteComponent, { backdrop: 'static' });
         modalRef.result.then((result: MODALCLOSERESPONSEDATA) => {
             if (result) {
                 this.sharedService.callData();
@@ -92,7 +92,7 @@
         this.vimID = this.value.identifier;
         this.router.navigate(['/vim/info', this.vimID]).catch(() => {
             // Catch Navigation Error
-          });
+        });
     }
 
     /** To show the Instances Info for the particular VimAccount @public */
@@ -109,7 +109,15 @@
     /** Show VIM Resources Data @public */
     public showVIMResources(vimDetails: VimAccountDetails): void {
         // eslint-disable-next-line security/detect-non-literal-fs-filename
-        const modalRef: NgbModalRef = this.modalService.open(ResourcesOverviewComponent, {backdrop: 'static'});
+        const modalRef: NgbModalRef = this.modalService.open(ResourcesOverviewComponent, { backdrop: 'static' });
         modalRef.componentInstance.resourcesData = vimDetails;
     }
+
+    /** On navigate to edit VimAccount @public */
+    public editVIM(): void {
+        this.vimID = this.value.identifier;
+        this.router.navigate(['/vim/edit', this.vimID]).catch(() => {
+            // Catch Navigation Error
+        });
+    }
 }
