আইপি ঠিকানার মাধ্যমে এক্সেল কলামটি বাছাই করা হচ্ছে


17

আমার কাছে মোটামুটি বড় (200 টিরও বেশি সারির) এক্সেল স্প্রেডশিট রয়েছে যা আমার নেটওয়ার্কে আইটেমগুলি তালিকাভুক্ত করে (যেমন প্রিন্টার, সার্ভার, ওয়ার্কস্টেশন, নেটওয়ার্ক প্রজেক্টর, ইত্যাদি) এবং প্রথম কলামগুলির মধ্যে একটি আইপি ঠিকানা ক্ষেত্র, যা রূপ নেয় 192.168.x.y। আমার সমস্যা যখন আমি এটি বাছাই করার চেষ্টা করি তা হ'ল এটি (উদাহরণ হিসাবে) থেকে 192.168.0.85যায় 192.168.0.9। আমি কি দেখতে চাই এটি প্রথম 3 অক্টেট উপর ভিত্তি করে বাছাই হয়, তাহলে গত অক্টেট কথাটি (অর্থাত .1, .2, .3, ইত্যাদি)। এটা কি সম্ভব? যদি তাই হয়, কিভাবে?

উত্তর:


19

নিক্সদা মন্তব্যে উল্লিখিত হিসাবে, সহায়ক কলামগুলি এটি সম্ভব করবে। পরে শীটটি বজায় রাখার জন্য আপনার কাছে দুটি বিকল্প রয়েছে:

  • বিভক্ত সহায়ক কলামগুলিতে সমস্ত নতুন আইপি যুক্ত করুন।
  • নতুন সংযোজনের জন্য পাঠ্য-থেকে-কলামগুলিতে পুনরাবৃত্তি করুন।

পদ্ধতিটি এখানে:

  1. আপনার আইপি কলামটি নির্বাচন করুন এবং Data> এ ক্লিক করুনText-to-Columns পাঠ্য থেকে কলাম

  2. ডিলিমটেড বিকল্পটি চয়ন করুন এবং পরবর্তী ক্লিক করুন। Otherচেকবক্সটি চেক করুন এবং একটি পিরিয়ড লিখুন .। পরবর্তী ক্লিক করুন। পছন্দ করা .  সীমানা হিসাবে

  3. সমস্ত কলাম কলামে রাখুন, এটিকে সাধারণ হিসাবে রাখুন, Destinationবিভাগটি সম্পাদনা করতে রেঞ্জ আইকনে ক্লিক করুন । গন্তব্য পরিবর্তন 1

  4. আপনি যে কলামগুলিতে নতুন পাঠ্যটি প্রদর্শিত হবে তা নির্বাচন করুন। এন্টার কী টিপুন। ভাগ্য পরিবর্তন 2

  5. আপনার পরিসীমা নির্বাচন করা হয়েছে তা নিশ্চিত করুন এবং Data> এ ক্লিক করুন Sort। বাছাইয়ের মানদণ্ড প্রবেশ করান। প্রতিটি অক্টেটের জন্য স্তরগুলি যোগ করতে থাকুন। শ্রেণীবিভাজন

  6. এখানে শেষ ফলাফল: ফলাফল


@ নিক্সদা হ্যাঁ, ধীর গতিতে: পি ইচ্ছা আমিও কিছুটা আপনার মতো করে ফেলে দিতে পারি
কানাডিয়ান লুক

দুঃখিত, @nixda! আপনার নিজের উত্তরটি যুক্ত করা কি অবৈধ?
ishষিমহরজ

ঠিক আছে, এটি কাজ করেছে ... অতিরিক্ত 15 টি রেপ পয়েন্ট নিয়ে লড়াই করার জন্য আপনার দু'জনের জন্য সময় এসেছে
কানাডিয়ান লুক

7

আমি বুঝতে পারি এটি একটি পুরানো পোস্ট, তবে একটি কার্যকরী সমাধান দেওয়ার স্বার্থে, আমি নিম্নলিখিতটি উপস্থাপন করছি।

কেবলমাত্র এই সূত্রটি একটি সংলগ্ন কক্ষে রাখুন এবং আপনার আইপি ঠিকানা (এই উদাহরণে এ 1) সম্বলিত কক্ষে নির্দেশিত রেফারেন্সগুলি আপডেট করুন। এটি 010.121.008.030 এর অনুরূপ ফলাফল এনে দেবে যা বর্ণানুক্রমিকভাবে সঠিকভাবে বাছাই করা যায়। তারপরে নতুন কলামের প্রস্থটি শূন্য এবং ভয়েলাতে সেট করুন। এক কাপ কফি উপভোগ করার সময়।

=TEXT(MID(A1,1,FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1)+1,FIND(".",A1,FIND(".",A1)+1)-1-FIND(".",A1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1)+1)+1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)-1-FIND(".",A1,FIND(".",A1)+1)),"000")&"."&TEXT(MID(A1,FIND(".",A1,FIND(".",A1,FIND(".",A1)+1)+1)+1,LEN(A1)),"000")

2
নিখুঁত, এই ভালবাসা। একটি একক সূত্র, একটি "সহায়ক" একক কলাম। ধন্যবাদ।
আর্লগুলি

সমস্ত এক্সেল সূত্রের মতো আপনার সিস্টেমে আঞ্চলিক সেটিংসের উপর ভিত্তি করে আপনাকে ;কমা ( ,) পরিবর্তে সেমিকোলন ব্যবহার করতে হবে ।
স্কট

1
আপনি সংক্ষিপ্ত …&"."&…পিরিয়ডগুলি ছেড়ে দিতে পারেন ( ) এবং 010121008030 এর মতো একটি সমতল, বারো-অঙ্কের নম্বর পেতে পারেন যা সঠিকভাবে বাছাই করবে (যদিও সাজানোর কাজটি আপনাকে বিরক্তিকর ডায়ালগ বাক্স ফেলে দিতে পারে)।
স্কট

1
Sub IPSplit()

HeaderRow = 1
ColimnName = "A"
BeginIPaddsressData = 2

Dim HeaderArray As Variant
HeaderArray = Array("IP oct 1", "IP oct 2", "IP oct 3", "IP oct 4")

Dim Octet() As String
Dim RangeSearch As Range, RangeFound As Range, LastCell As Range
Dim LastCellRowNumber As Long, LastCellColumnNumber As Long, RowNumber As Long

With ActiveSheet
Set LastCell = .Cells(HeaderRow, .Columns.Count).End(xlToLeft)
LastHeaderColumnNumber = LastCell.Column

Set RangeSearch = Range("1:1")
Set RangeFound = RangeSearch.Find(What:=HeaderArray(0), LookIn:=xlValues)

If RangeFound Is Nothing Then
RowNumber = 2
    If .Cells(RowNumber, .Columns.Count) <> vbNullString Then
        Set LastCell = .Cells(RowNumber, .Columns.Count)
        LastCellColumnNumber = LastCell.Column
    Else
        Set LastCell = .Cells(RowNumber, .Columns.Count).End(xlToLeft)
'Specifies the last column LastCellColumnNumber.

        LastCellColumnNumber = LastCell.Column
    End If

Range(Cells(HeaderRow, LastCellColumnNumber + 1), Cells(HeaderRow, LastCellColumnNumber + 4)).Value = HeaderArray
'Insert Header

Else
LastCellColumnNumber = RangeFound.Column - 1
End If

Set LastCell = .Cells(.Rows.Count, ColimnName).End(xlUp)
'Specifies the last cell number in the column ColimnName.

LastCellRowNumber = LastCell.Row   
End With

    For I = BeginIPaddsressData To LastCellRowNumber

    Octet = Split(Cells(I, ColimnName).Value, ".")
    For O = 0 To 3       
'cells populate the values of octets 1-4.
      If (UBound(Octet) - O) >= 0 Then      
         Cells(I, ColimnName).Offset(0, LastCellColumnNumber + O).Value = Octet(O)
      End If
    Next
Next
End Sub

আমি এখনই এটি পরীক্ষা করতে পারি না (কর্মক্ষেত্রে নয়), তবে আমি যখন কাজটি করব তখন চেষ্টা করব। দেখে মনে হচ্ছে এটি দীর্ঘ তালিকাগুলির সাথে আরও মানিয়ে নেবে, বিশেষত যদি আমি এই ম্যাক্রোটি চালানোর জন্য কেবল 'রিসোর্ট' বোতামটি যুক্ত করি
কানাডিয়ান লূক

@ কানাডিয়ানলুক আপনি একটি কলাম বিগআইএনটিআইপিও তৈরি করতে পারেন। তারপরে আপনি সমস্ত আইপি ঠিকানা এবং বিপরীতে এজেড বাছাই করতে পারেন।
এসটিটিআর

এটি দুর্দান্ত কাজ করে! আমার অনুরোধটি হ'ল প্রিন্টার যুক্ত হওয়ার সাথে সাথে এটি পুরানো কলামগুলিকে পুনরায় ব্যবহার করতে পারে
কানাডিয়ান লুক

@ কানাডিয়ানলুক আপনি যদি কোনও বিষয়ের নাম "আইপি অক্ট 1" রাখেন তবে কলামটি ডানদিকে যুক্ত হবে। এবং পুরানো রয়ে গেছে। আপনার যদি গল্পের দরকার হয় তবে এটি। উদাহরণস্বরূপ, যখন একটি নেটওয়ার্ক থেকে অন্য ব্যাপ্তিতে স্থানান্তরিত হয়। সম্ভবত আমি প্রশ্নটি বেশ বুঝতে পারি নি ...
STTR

0

জন হোমার এর উত্তর ছাড়াও, আমি এখানে একটি সূত্র সরবরাহ করেছি যা অ্যাপলের নাম্বার অ্যাপ্লিকেশনটিতেও TEXTকাজ করে , কারণ সেখানে ফাংশনটি বিদ্যমান নেই। গুগল ডক্সেও পরীক্ষিত।

=DEC2HEX(LEFT(B2,FIND(".",B2)-1),2)
&
DEC2HEX(MID(
    B2,
    FIND(".",B2)+1,
    FIND(
        ".",
        B2,
        FIND(".",B2)+1
    ) - FIND(".",B2) - 1
),2)
&
DEC2HEX(MID(
    B2,
    FIND(
        ".",
        B2,
        FIND(".",B2)+1
    ) + 1,
    FIND(
        ".",
        B2,
        FIND(
            ".",
            B2,
            FIND(".",B2)+1
        )+1
    ) - FIND(
        ".",
        B2,
        FIND(".",B2)+1
    ) - 1
),2)
&
DEC2HEX(RIGHT(
    B2,
    LEN(B2) - FIND(
        ".",
        B2,
        FIND(
            ".",
            B2,
            FIND(".",B2)+1
        )+1
    )
),2)
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.