Formula or vba code to copy entire column based on text found in entire cell range

Rahulkr

Board Regular
Joined
Dec 10, 2019
Messages
53
Office Version
  1. 2010
Platform
  1. Windows
Dear All masters, I am having some data like below:- Is there any formula or Vba code to fetch or copy entire column based on text found. Many many thanks in advance.
ColumnABCDEFG
Row 1DaysD1D2D3D4D5D6
Row 2typePH1PH2PH3PH4PH5PH6
Row 3jk
Row 4lm
Row 5
Row 6no
Row 7
Row 808:30 Ande
Row 9
Row 10789pq
Row 1189yy

From this data I need to copy only that entire column in which the word "ANDE" is found and paste the entire row as below in another sheet:-

1612808125545.png


It it fixed that the word which I have to search will be unique, but it is not fixed that the word which I will search will be in same column, every time it will be changing the position from cell to cell and column to column.
But the given range of data will be fixed.

Many many thanks in advance. if any one can help on this.
 

Fluff

MrExcel MVP, Moderator
Joined
Jun 12, 2014
Messages
55,313
Office Version
  1. 365
Platform
  1. Windows
In your profile you have selected virtually every version of xl
1612821827761.png

You need to go into Account details & unselect all versions of Excel other than 2010.
That way members here will know which version of Excel you are using.
 

Some videos you may like

Excel Facts

What is the last column in Excel?
Excel columns run from A to Z, AA to AZ, AAA to XFD. The last column is XFD.

Joe4

MrExcel MVP, Junior Admin
Joined
Aug 1, 2002
Messages
56,514
Office Version
  1. 365
Platform
  1. Windows
Joe, similarly how can I do for Max and Mark in sheet 3 and 4?

As long as all three values exist, this should work:
VBA Code:
Private Sub Worksheet_Change(ByVal Target As Range)

    Dim myText() As Variant
    Dim c As Long
    Dim i As Long

'   Enter values to look up in array
    myText = Array("Ande", "Max", "Mark")
   
'   Loop through array
    For i = LBound(myText) To UBound(myText)
       
'       Locate value on sheet 1
        On Error GoTo err_chk
        c = Cells.Find(What:=myText(i), After:=Range("A1"), LookIn:=xlFormulas, _
            LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
            MatchCase:=False, SearchFormat:=False).Column
        On Error GoTo 0
       
'       Copy and paste to other sheets
        Columns(c).Copy Sheets(i + 2).Range("A1")
       
    Next i

    Exit Sub
   
err_chk:
'   error handling if cannot find value
    If Err.Number = 91 Then
        MsgBox "Cannot find " & myText(i) & " on Sheet1", vbOKOnly, "ERROR!"
    Else
        MsgBox Err.Number & ": " & Err.Description
    End If
       
End Sub
 

Rahulkr

Board Regular
Joined
Dec 10, 2019
Messages
53
Office Version
  1. 2010
Platform
  1. Windows

ADVERTISEMENT

And thank you for updating your details. :)
Many many Thanks from my bottom of my heart, Joe and Fluff for helping and assisting me. Lots of thanks and Uncountable blessings from my heart to you all.
 

Dossfm0q

Banned User
Joined
Mar 9, 2009
Messages
570
Office Version
  1. 2019
Platform
  1. Windows
VBA Code:
Public Sub copyColumn()
    
    Dim Rng As Range: Set Rng = Sheet1.Range("A1").CurrentRegion
    Dim Cl As Long, LstRw As Long
    
        Cl = Sheet1.Cells.Find(What:="Ande", After:=Rng.Cells(1, 1), LookIn:=xlValues, LookAt:=xlPart, _
        SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Column
        
        LstRw = Cells(Rows.Count, Cl).End(xlUp).Row
        
        Rng.Columns(Cl).Cells(1, 1).Resize(LstRw, 1).Copy Destination:=Sheet2.Range("A1")
End Sub
 

Joe4

MrExcel MVP, Junior Admin
Joined
Aug 1, 2002
Messages
56,514
Office Version
  1. 365
Platform
  1. Windows

ADVERTISEMENT

Did my last code work for you, with your 3 values?
 

Rahulkr

Board Regular
Joined
Dec 10, 2019
Messages
53
Office Version
  1. 2010
Platform
  1. Windows
Joe, now I am in trouble that the code which you have provided is working very much fine in system, but what if I will upload that file in the google sheet. Yes, I have tried that also, but it won't work. So, I am Keeping coded file in my system through system sharing and one file which is based on formula is kept in google sheet for remote users where I have used the below formula which is quite working but not what I desired as.

and the formula is =INDEX($A$1:$G$11,ROW($ZZ1),MATCH(1,TRANSPOSE(MMULT(--(TRANSPOSE(ISNUMBER(SEARCH("Ande",$A$1:$G$11)))),ROW($A$1:$G$11)^0)),0))&"".

and the requirement changed as per the use as like this below:-

Driversdriver 1driver 2driver 3driver 4driver 5driver 6
ph noPH1PH2PH3PH4PH5PH6
pickup area91118116111355822542255
08:30 Ande
pickup time08:30 Max09:10 Mark
DropAndeMaxMark

and the data should be pasted as in Sheet1 like below:
driver 1
PH1
9111
08:30 Ande
Ande
and so on similarly in sheet 2 for max and sheet 3 for mark.

If possible kindly please help me on this. The error what I am getting is that if the Ande is written with time and without time in the same column then it is showing #N/A and when if i will remove any of one values from the entire column then it is working . Please have a look on this.
 

Joe4

MrExcel MVP, Junior Admin
Joined
Aug 1, 2002
Messages
56,514
Office Version
  1. 365
Platform
  1. Windows
I do not work in Google Sheets, so I cannot help you there.
I recommend you post a new question and post it to the General Discussion & Other Applications forum, which is the place to post Google Sheets questions.
 

Watch MrExcel Video

Forum statistics

Threads
1,127,121
Messages
5,622,861
Members
415,935
Latest member
kes1973

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Top