问题:返回所有记录where Jon Doe =<bus_contact> 或 <bus_sponsor>.
当前代码返回记录1,因此仅使用一个查询返回记录1和2需要进行哪些修改?
XML
<root>
<row>
<project_id>1</project_id>
<project_name>Name1</project_name>
<bus_contact>Jon Doe</bus_contact>
<bus_sponsor>Bruce Wayne</bus_sponsor>
</row>
<row>
<project_id>2</project_id>
<project_name>Name2</project_name>
<bus_contact>Peter Parker</bus_contact>
<bus_sponsor>Jon Doe</bus_sponsor>
</row>
</root>
Run Code Online (Sandbox Code Playgroud)
C#
class Program
{
static void Main (string[] args)
{
XElement main = XElement.Load ("master_list.xml");
var results = main.Descendants ("row")
.Descendants ("bus_contact")
.Where (e => e.Value == "Jon Doe")
.Select (e => e.Parent)
.Select (e => new {
project_id = e.Descendants ("project_id").FirstOrDefault ().Value,
project_name = e.Descendants ("project_name").FirstOrDefault ().Value
});
foreach (var result …Run Code Online (Sandbox Code Playgroud) 当RemoveDuplicates使用变量传递Columns参数时,它会失败并抛出错误.当列直接传递时,相同的代码有效Array(1,2)
错误5:无效的过程调用或参数
Sub test()
Dim arrCols
arrCols = Array(1, 2)
'/This here works
Sheet1.Range("$A$1:$B$10").RemoveDuplicates Columns:=Array(1, 2), Header _
:=xlYes
'/ Same code fails when the columns array is passed via variable
'/ Error 5: Invalid procedure call or argument
Sheet1.Range("$A$1:$B$10").RemoveDuplicates Columns:=arrCols, Header _
:=xlYes
End Sub
Run Code Online (Sandbox Code Playgroud) 这是我的第一个问题,欢迎建设性的批评!我正在尝试从excel vba查询访问数据库,并将返回信息放入Excel范围。我收到此错误:
错误消息:“运行时错误'3709'该连接不能用于执行此操作。在此情况下该连接已关闭或无效。”
码:
Sub Importfromaccess()
Path = "C:\Users\myUser\Desktop\Database1.accdb"
Set cn = CreateObject("ADODB.connection")
cn.Open "Provider=Microsoft.ACE.OLEDB.12.0; Data Source=" & Path & ";"
Set rs1 = CreateObject("ADODB.recordset")
rs1.activeconnection = cn
Dim strSQL As New ADODB.Command
strSQL.CommandText = "SELECT * FROM Tooling WHERE TID=BD0001"
strSQL.CommandType = adCmdText
Set rs1 = strSQL.Execute ' This is the line the error occurs on
Sheets("Calc").Range("K1").CopyFromRecordset rs1
End Sub
Run Code Online (Sandbox Code Playgroud)
我启用了以下参考:
我尝试放置线:
cn.Open …Run Code Online (Sandbox Code Playgroud) 每当我尝试使用它时,以下代码行都会给我 Sub 或 Function not defined 。我试过仔细检查我的拼写,重命名它,在线查找其他问题(大多数其他错误是忘记在工作表或工作表后添加 s),但我不知道我的代码有什么问题。我最初是从宏记录器中获得此代码的。
我在不同的工作表上多次使用这个子,但这并没有影响我的其他类似的子。
Sub SolverSolver()
SolverOk SetCell:="$G$3", MaxMinVal:=2, ValueOf:=0, ByChange:="$G$4,$G$6", _
Engine:=1, EngineDesc:="GRG Nonlinear"
SolverSolve
End Sub
Run Code Online (Sandbox Code Playgroud)
也许它的使用方式有问题,所以我在下面添加了它的调用方式。这一行在简单命令的一个大子中,比如给一个单元一个名字,这个大的简单子也重复多次。但是,即使尝试通过直接通过开发人员选项卡运行 sub 来运行它,它仍然有相同的错误,所以我认为这不是调用 sub 的方式。
ActiveSheet.Buttons.Add(630.75, 52.5, 74.25, 26.25).OnAction = "SolverSolver"
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激!
我试图将一个数据网格的标题宽度绑定到另一个数据网格的标题.
所以,我为父数据网格的每一行添加了一个数据网格.现在,我试图使用Parent标头的列控制子数据网格的列大小.
所以在最后一列的headertemplate中,我添加了一个只有列标题的数据网格,没有行.在本专栏的celltemplate中,我添加了另一个数据网格,没有标题,只有数据行.
在调整headertemplate datagrid列标题的大小时,XAML中是否有任何方法可以调整celltemplate的datagrid列的大小.
在SO上读了很多关于CodeProject等的帖子,但是我无法使它工作.有可能吗?
XAML
<Grid>
<DataGrid x:Name="Test"
AutoGenerateColumns="False"
CanUserAddRows="False"
ItemsSource="{Binding AllAssets}"
CanUserResizeColumns="True">
<DataGrid.Resources>
<DataTemplate x:Key="NewKey2">
<DataGrid Name="dgC"
AutoGenerateColumns="False"
HeadersVisibility="None"
ItemsSource="{Binding months}"
CanUserResizeColumns="True">
<DataGrid.Columns>
<DataGridTextColumn x:Name="Col1" Binding="{Binding value}" />
<DataGridTextColumn x:Name="Col2" Binding="{Binding MonthName}" />
</DataGrid.Columns>
</DataGrid>
</DataTemplate>
<DataTemplate x:Key="NewKey3">
<StackPanel>
<Label HorizontalAlignment="Center">All Headers</Label>
<DataGrid Name="dgH">
<DataGrid.Columns>
<DataGridTextColumn Width="{Binding ElementName=Col1, Path=ActualWidth}" Header="Value" />
<DataGridTextColumn Width="{Binding ElementName=Col2, Path=ActualWidth}" Header="Month" />
<!--Error or no result on these attempts
<DataGridTextColumn Header="Month" Width="{Binding Source={x:Reference Col2}, Path=ActualWidth}"/>--><!--
<DataGridTextColumn >
<DataGridTextColumn.Header>
<TextBlock Width="{Binding Source={x:Reference Col1}, …Run Code Online (Sandbox Code Playgroud)