info

Copper Contributor

I have a server name dl360g10. this server has many conbinations to it. How can I select 1 group and have it populated on a sheet .

1 example

Proliant_DL360_G10_Server
FlexLom
PCIe1
PCIe2
PCIe3
PSU1
PSU2
1 Reply

@P951d03s_94 

To achieve this in Excel using VBA, you'll need to create a macro that allows you to select a server configuration from a predefined list and then populate a sheet with the corresponding details. Here’s a step-by-step guide to help you set this up:

Step 1: Prepare Your Data

First, create a list of possible server configurations and their details. You can do this on a separate sheet named "Configurations".

  1. Open Excel and create a new worksheet named "Configurations".
  2. In this worksheet, list all possible configurations in a table format. For example:

Configuration

Component 1

Component 2

Component 3

Component 4

Component 5

Component 6

Component 7

Proliant_DL360_G10_Server

FlexLom

PCIe1

PCIe2

PCIe3

PSU1

PSU2

 

Proliant_DL380_G10_Server

FlexLom

PCIe1

PCIe2

PCIe3

PSU1

PSU2

 

Step 2: Create a User Form for Selection

  1. Press Alt + F11 to open the VBA editor.
  2. Insert a new UserForm:
    • Go to Insert > UserForm.
    • Add a ComboBox to the form for selecting the configuration.
    • Add a CommandButton to the form for triggering the population of the sheet.

Step 3: Populate the ComboBox with Configurations

  1. Double-click the UserForm to open its code window.
  2. Use the UserForm_Initialize event to populate the ComboBox with the configurations from the "Configurations" sheet:

Vba Code is untested backup your file.

Private Sub UserForm_Initialize()
    Dim ws As Worksheet
    Dim i As Integer

    Set ws = ThisWorkbook.Sheets("Configurations")
    i = 2

    Do While ws.Cells(i, 1).Value <> ""
        Me.ComboBox1.AddItem ws.Cells(i, 1).Value
        i = i + 1
    Loop
End Sub

Step 4: Populate the Sheet Based on Selection

  1. Add the following code to the CommandButton's Click event:

Vba Code is untested backup your file.

Private Sub CommandButton1_Click()
    Dim wsConfig As Worksheet
    Dim wsTarget As Worksheet
    Dim selectedConfig As String
    Dim i As Integer
    Dim row As Integer

    Set wsConfig = ThisWorkbook.Sheets("Configurations")
    Set wsTarget = ThisWorkbook.Sheets("Sheet1") ' Change to your target sheet name

    selectedConfig = Me.ComboBox1.Value

    If selectedConfig = "" Then
        MsgBox "Please select a configuration"
        Exit Sub
    End If

    ' Clear the target sheet before populating
    wsTarget.Cells.Clear

    ' Find the selected configuration in the Configurations sheet
    i = 2
    row = 1

    Do While wsConfig.Cells(i, 1).Value <> ""
        If wsConfig.Cells(i, 1).Value = selectedConfig Then
            wsTarget.Cells(row, 1).Value = "Configuration"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 1).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 1"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 2).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 2"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 3).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 3"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 4).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 4"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 5).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 5"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 6).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 6"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 7).Value
            row = row + 1

            wsTarget.Cells(row, 1).Value = "Component 7"
            wsTarget.Cells(row, 2).Value = wsConfig.Cells(i, 8).Value
            row = row + 1

            Exit Do
        End If
        i = i + 1
    Loop
End Sub

Step 5: Run the Macro

  1. Press Alt + F8 to open the Macro dialog box.
  2. Select the macro associated with the UserForm and click "Run".
  3. The UserForm will appear, allowing you to select a configuration and populate the target sheet.

By following these steps, you can create a VBA macro that allows you to select a server configuration and populate an Excel sheet with the details of that configuration. This approach can be customized further based on your specific requirements.

NOTE: Since no one has answered it for at least one day or more, I entered your question in the AI. The text and the steps are the result of the AI. Maybe it will help you further in your project, if not please just ignore it.

 

My answers are voluntary and without guarantee!

 

Hope this will help you.

Was the answer useful? Mark as best response and Like it!

This will help all forum participants.