Text To Columns Macro For Irregular Spacing Of Data
Mar 1, 2010
i have written a macro to parse data in to four columns using the text to columns fixed width option, but unfortunately the data i get changes its spacing and configuration every day, meaning that the fixedwidth columns dont separate the data correctly. below is how it looks some of the time.
I use excel and would like to know how to copy a large volume of address data but at the same time filtering out irrelevant data placed under each other in a row, in this case, air compressors air conditioning web address etc ( see below for example). I need the first 5 lines only. The rows of unwanted data are irregular i.e some have 10 lines, others 5 , and others 2 or one line which makes using a formula difficult as there is no consistency. The data eventually need to be placed horizontally in columns to be compared to other address lists. To make matters worse, the text data has been merged and wrapped.
The email macro I set up didn't work when I referenced the sendto from a cell in sheet 2; I changed it to reference an email address on sheet 1 and it worked with spacing errors. I need to fix the spacing errors, and I need to be able to pull the email from sheet 2. Code referencing sheet 2:
I have 1000's of columns of data to go through, I just need to visually inspect the data and then delete any column containing irregular data. At the moment; I select a section of the first column of data and insert a column chart for that data. I then need to change the source of the chart data to that of the next column, to do this I click on the data within the chart and it will show the data on the worksheet that I have selected by surrounding it in a blue box, I then click on this box and drag it to the next column of data. Clicking on the blue box (which sometimes I miss, and I then have to go back to the chart to activate it again) and dragging it to the next column is getting annoying, especially as I have sooooo much data to go through. Does anyone know if there is a shortcut key for this, or how I could write a macro to do this?
im looking for a way to sort some data exported from an old stock recording software. the system outputs the data as a .csv file but each item bought is grouped into a particular heading, a line is only generated if money is spent under that particular heading. i cannot make the software generate lines if no money is spent so the number of lines generated each period changes.
period 1 3202 fuel £3000 3203 PPE £250 3204 major units £5000 3205 planned maint £212 3207 unplanned maint £457 period 2 3202 fuel £2500 3203 PPE £120 3204 major units £1000 3208 storage £212 3210 windows £457
if the data was regular i could simply add the totals each month and divide to get the average.
what i am looking for is a way to auto sort the data onto lines by possibly injecting the missing headings with zero as the total spent.
I have alot of data with data and time in one column, and temperature in another. All my data is bunched together, i have temperature measurements every 3 minutes, 24 hours a day, for about a month... and then after that, i have temperature measurement 10 minutes a day, 24 hours a day for several months
I want to group my data by hour, so for my 3 minute measurements, 20 values make up one hour. And for my 10 minute measurements, 6 values make up one hour. I want to know if there is a way to space out my data so that it groups it/ spaces it out. So for the 3 minute values, it would list 20, then put say 3 blank rows, then 20 more values, then 3 blank rows etc.... and for the 10 minute values, it would be 6 values, then 3 blank rows, 6 values, then 3 blank rows etc...
I am trying to get a macro to run in excel that takes a simple text to columns command in one line of data and runs the command on a loop through however many rows of data there happen to be.
I've attached two screenshots - one with what I've got now (Before.jpg) and what I'd like to have after the macro runs (After.jpg). The code below is what I used to get the first text to column breakout, which I can hopefully run on a loop to breakout anything in the DEPT column that contains a "/". It can ignore the rows that only have one department to begin with.
Eventually I'll want to create another macro that transposes the breakout text back into the DEPT column and populates it with the corresponding data, but I figure I'll take things one step at a time.
My problem is that data from previous applications are "bleeding" into new applications while running my macro.
I am utilizing the macro below to paste an application and then to convert the application to upper case in addition to some additional formating changes. After performing the macro I save the newly created document to a different folder. With new applications I repeat the above steps.
I tried to incorporate the clearing of the clipboard in my macro using: Edit=>office clipboard=>clear all. The keys strokes during the " record macro" process do not seem to record in the macro.
I am using Excel 2003, SP2
Sub Process_Application() ' ' Process_Application Macro ' Macro recorded 3/23/2009 '
I am trying to write a micro code to split text which is copied into cell A1 into columns. I can do this fine by going to "data" the "text to Columns" and selecting the places i want to split the text (this is the same for every piece of data i copy in).
The macro works perfectly every time. the problem is that the spreadsheet is shared and i want to protect certain cells on the sheet, when i protect the sheet the recorded macro does not work as the "data", "text to columns" is not available in a protected workbook.
I was just wondering if someone could help me, so i can run a macro to split the text which also allows me to protect cells. In the "text to column" option the "fixed width" (column breaks) i choose are: 4, 25, 34 and 43.
What I have is a column of data(text) which contains amongst all the text three strings of text in ever cell in the column which I require copying into three adjoining cells
The data I require is :-
(a) The persons name which is always after the word ‘Requester’ e.g. Requester Steve Robinson
(b) Their office location which is directly after the persons name and is in brackets e.g. (Newcastle User)
(c) The Approving persons name which is preceded by ‘Approved by’ e.g. Approved by Christine Hunting
See examples 1 & 2 below
Example 1
CR0/CRZ3651 Requestor Steve Robinson (Newcastle User) Tel: 01234 798157 Approved by Christine Hunting
Please install and configure 2 Ultra 2s (typhoon and lancaster) for use as ARTE workstations. These workstations require Solaris 2.5.1 plus the same patches as before
Example 2
CR0/CRZ3118 Requestor Doug Cunningham (Newport User) Tel: 0114 9881480 Approved by John Smithers
Please provide support to set up Cisco 2691 Router and PIX-506E Firewall to enable external connection of a remote terminal for project work.
As you will appreciate the text in the cells is of non standard lenght and the three pieces of information can be located virtually any where in the text
First of all i have to mention that i'm not a coder guy so excuse me if i'm no good in explaining the problem.
What i'm trying is to convert texts into columns. I constantly have an email containing short codes about my business and each code has a special meaning. So i need to convert these codes and lookup in my database. Here is an example of the source file in email.
V MFACTBEL 04-TLV * FH 42T B * USAFEP * FH42T440 V * MEDHCM EPAH342 EUDRPA1 * UDFSUB * EU5SCR V FROCALC * TYPE-FH * V2514 * ULIVING * SOUNDPLU V * AIRFLPAC * EC-REG * L405A71 * R690A71 * LNGTUR V * MIRCOMF * CBL2-BA3 * 1DAYEC * TUR-MSP LFUEL V RFUEL * WL-ST * UAXLE * TEXTILE * TTRCON77 V * ESH-LEFT * UDFP * 4*2 * TRACTOR CONC-BAS............
I am using the TexttoColumns macro to split cell contents into two columns. It works well except for one condition where the data it is parsing has a trailing zero. Excel drops the zero but I need it in the output.
Example Sun Management Center Agent: 4.0
Result Column A Sun Management Center Agent Column B 4
macro to compare 4 columns of text (first and last names) then add a checkmark in separate columns if they match and don't match? For example I have this kind of data to compare and the results required:
Sheet 1 Last Name First Name Smith Mike Johnson Bruce Hendrick Fred Shaffer Kerry
Sheet 2 Last Name First Name Match No Match Klee Pierre X Verge Kerry X Smith Mike X Wright David X Hendrick Fred X
I need the macro to mark an X in the Match column if the first and last names match only and if they do not match exactly a X in the No Match column.
I've got a report that has a period date in it and its in the format "ARP-12", which is not set as a date. If I highlight the column and click Text to Columns it puts it in a date format which I can use.
I recorded myself doing this to insert into a marco but the date format is not correct. When I do it manually ARP-12 comes out as 01/04/2012 which is what I need but when i run the code i recorded it comes out as 12/04/2011.
Macro for text to columns function (if this is the best way to go).
Our work report exports customer subscriptions which we call "role name". Our customers subscriptions have a valid and start date, but our customers also can purchase multiple subscriptions and we need to separate this data in order to report by subscription.
Our export has an * after each subscription, the date is in square brackets and each subscription is separated by a semi column.
So for arguments sake, let's say we have the following subscriptions:
subscription a subscription B subscription C subscription D
if one customer has purchased four subscriptions on various dates, their exports may look like this:
I then use a text to columns function to separate by the * and the; I then am left with a column for the role, one for the start date and one for the expiry date.
The roles are in alphabetical order, but sometimes some manual sorting needs to be done to delete the roles I don’t need and keep the ones I do. For example someone could have subscribed to subscription B and not in A that means that the first column may not have all the roles I need, it may be in the second or third column depending on what other subscriptions they have.
So not sure if text to column is even the best way to go?
I have two column (A and B) text data in worksheet1. If I type same text of column A (of worksheet1) in worksheet 2 column A, how can I retrieve data from worksheet 1 to 2 from same row.
Without using helper columns, what is the best way to return a value from an array using three criteria from irregular data? The attached sample gives and example.
My goal is to get only the 'DXXX' which sometimes might be only 'DXX'. I've tried using the following formula but I seem to be going wrong somewhere as I only get 'D'.
I am trying to parse stock holdings for certain companies but I am running into trouble because they are not uniform in their form. The data has a general form but each company uses a slightly different style for the forms. These differences are hamstringing my efforts to effectively parse the data. I have attempted to parse the data using the split function to get it into a more manageable form, and then use various comparisons to tease out the right information. This, however, has not panned out like I hoped. Below are some sample data forms and some of my (albeit poorly written and structured) VBA to try and solve the problem.........
I am trying to extract the same fields from each, such as name or number of shares:
3COM CORP 885535104 1,700,000 Prudential Financial, Inc. 432848109 100,000 this would be a desired output.
here is some of my code to try and accomplish this. this seems to work the data if it is formatted correctly, but I would like write a general parser, and this is what I am struggling with. I cannot figure out how to write something that will correclty parse these irregular strings.
txt = ActiveCell.Value x = Split(txt, " ") name = "" cusip = "" shrs = "".....................
I have this macro that does text-to-columns based on delimiting with spaces. It seems to work fine but the first time I use it when I open my spreadsheet it comes up with "Do you want to replace the contents of the destination cells?".The answer to this is always yes, is there a little bit of code I can poke into this macro to ignore this warning?
I'm using the the Texttocolumns method in a Macro, and when it runs across a cell without any data I get "Run time error '1004' No data was selected to parse". How would I get passed this? I would like it to just remain a blank range without the error. Here's the code I'm using:
I need to write a macro which inserts rows such that each ID has exactly 10 rows (1 for each brand). The difficulty is that each ID has a varying number of blank rows required.
I have the below code that I would like for the data to fall in the exact same space underneath their proper headings. I cant create an html shot for specific reasons and so I am stuck with creating the table in this manner. Does anyone know how to on a single row to accomplish placing date so it looks like a table
10 spaces 20 spaces 30 spaces
that way the number will always fall on space number 10, 20 and 30 on same row
I have a cell in workbook X on Sheet1 (cell AB3) that states which columns should be exported from workbook X on Sheet3 to a new workbook. The value of cell AB3 on Sheet1 changes based on what a user selects in some check boxes on Sheet1. I would like my macro to read the value of cell AB3 and interpret it is a range reference of which columns to copy from Sheet3 into a new workbook. The problem I'm having is knowing what line(s) of code I would use in VB to read cell AB3 as a range and what kind of referencing rules I need cell AB3 to contain. Right now this is what the cell looks like to the user:
Code: Sheet3'(A:A,B:B,E:E,F:F).Select
For cell AB3 to look this way I'm just using some hard coded text, such as the sheet number and .Select, plus some concatenated values in between. Perhaps this text string needs to be modified, but I'm also wondering what I would use in my macro to reference the cell and read it as reference to which columns to select in Sheet3.
I am trying to convert cells (all in column D) which are separated by "~" into columns. Unfortunately, running the text to columns command on several rows at a time can cause Excel to panic with an out of memory error (error #7 etc.).
The file is ~100mb and contains 500k-700k rows (I have 4GB of RAM so I know this is more a limit of Excel's 2GB RAM constraint).
Can you please help me write a macro to text to column convert each cell in column D?
I tried a macro which started with a for loop, and called the function for each cell individually, but even this led to an out of memory exception after 156,000 rows (although the same macro worked fine on a similar sheet with 700,000 rows).
Are there any other ways of clearing the Excel buffer/temporary space during the function calls to avoid causing Excel to crash?
I've tried for some time now to create a chart where the x-axis make up for irregular dates. Making the line between 2 points longer if it's long time between them and short if it's short time between them.
I've finally understood line charts doesn't support that and I have to use scatter graph. It seems to work but the dates, the get all messed up. I type 2014-11-11 but the x-axis in the graph shows 2283-12-12 or something like that.
Got a notion that I might have to transform it to the date value manually first but I get #VALUE ERROR
i.e. 2014-11-11 in A1, then I type in A2 =DATEVALUE(A1).
How do I get a chart to work with irregular dates correctly?
I regularly import a list of data into Excel containing employee team names, employee names, and (for these purposes, irrelevant) data. The team name is the only data in column I, and therefore I can easily pick this up an summarise it in a lookup. The employee name is always one row above it, and in column D. However, it is not the only data in column D, and each employee's records contain varying numbers of rows. How can I have Excel copy the employee name in to column J, alongside the team name in column I, but ONLY in rows where there is data in column I?